2012-03-21 8 views
0

私はチャットアプリケーションで作業しています。私は正常にメッセージを送受信できます。しかし、バブルメッセージを統合しようとすると、私はガイダンスが必要です。私は2つのレイアウトフラグを使用したリストビューの動的メッセージ

  1. 左レイアウト(私がメッセージを送っ表示、2.右のレイアウトを()表示は、メッセージを受け取った。私はバブルのメッセージを送っていたメッセージを表示することができるよ。私が受け取っを表示することはできませんよ持っています。メッセージは、どのように私は先に行く必要があります

サンプルコードは以下の通りである:上記のコードでは

public View getView(int position, View convertView, ViewGroup parent) { 
      LayoutInflater inflater = getLayoutInflater(); 
      View row = null; 
      String jid = null; 
      String even_color, odd_color; 
      SharedPreferences prefList = getSharedPreferences("PrefsFile", 
        MODE_PRIVATE); 
      even_color = prefList.getString("even_bubble_color", "pink"); 
      odd_color = prefList.getString("odd_bubble_color", "green"); 

      int even_color_id = getResources().getIdentifier(even_color, 
        "drawable", "com.teks.chilltwit"), odd_color_id =  getResources() 
        .getIdentifier(odd_color, "drawable",  "com.teks.chilltwit"); 

      //ImageView even_view, odd_view; 
     // System.out.println("Timeline: Position: "+position+", Length:  "+data.length); 
     // if(position!=data.length-1){ 

      if (jid != null) { 
       row = inflater.inflate(R.layout.list_row_layout_odd,  parent, 
         false); 
       TextView textLabel = (TextView)  row.findViewById(R.id.text); 
       textLabel.setText(datav); 
      } 

      else { 
       row = inflater.inflate(R.layout.list_row_layout_even,  parent, 
         false); 
       TextView textLabel = (TextView)  row.findViewById(R.id.text); 
       textLabel.setText("" + messages); 
     } 

      return row; 
     } 
    } 

、私がメッセージを送信する場合は、左のレイアウトを表示する必要があると他の私は、右表示する必要があります私がメッセージを受け取った場合のレイアウト。この問題で私を案内してください。

ありがとうございました。

答えて

0

ここでの問題は、jidが常にnullではないことです。

+0

s。あなたは右です。 nullの場合は、受信したメッセージを受信する必要があります。 nullでない場合、私は送信されたメッセージを表示する必要があります..どのように私はそれを行うことができます。 – user1265623

+0

問題は、このコードでは絶対にありません。なぜなら、あなたはnullになるようにjidを設定し、決して何も割り当てないからです... – Andrei

関連する問題