2012-03-22 40 views
0

我能夠發送和接收消息xmpp客戶端,並以相應的佈局在listview中顯示它們。當我發送或接收消息。我將發送和接收的消息同時在不同的佈局的單個文本視圖中組合。我需要在不同的佈局的文本視圖中顯示它們。我想在1佈局的textview中顯示收到的消息,並在另一個佈局textview中相應地發送消息。在單個列表視圖中設置多個textview android

請在這個問題上指導我..

在此先感謝。

+0

你可以張貼的例子嗎?你的解釋並不那麼好。我想你想把發送的消息放在一個文本視圖中,並在另一個接收到消息?如果是這樣,只要確保TextView的ID是不同的,並抓住你需要的一個 – Mimminito 2012-03-22 14:23:40

+0

我很抱歉沒有正確框定我的問題。我有2個不同的佈局,每個佈局都有一個textview。我需要根據發送或接收消息調用相應的佈局。我如何達到它。 – user1265623 2012-03-22 14:43:56

回答

0

才能執行此以下的方法: - 你希望它是什麼樣子

package com.aman.sample.bubblelist; 

import android.app.Activity; 
import android.content.SharedPreferences; 
import android.graphics.drawable.Drawable; 
import android.os.Bundle; 
import android.view.LayoutInflater; 
import android.view.View; 
import android.view.ViewGroup; 
import android.widget.BaseAdapter; 
import android.widget.ImageView; 
import android.widget.ListView; 
import android.widget.TextView; 

public class Main extends Activity { 

    String[] data = { "Sample User Data ", "Sample User Data ", 
      "Sample User Data ", "Sample User Data ", "Sample User Data ", 
      "Sample User Data ", "Sample User Data ", "Sample User Data ", 
      "Sample User Data ", "Sample User Data ", "Sample User Data ", 
      "Sample User Data ", "Sample User Data ", "Sample User Data ", 
      "Sample User Data ", "Sample User Data " }; 
    Drawable[] usrimg = null; 
    String bgimg = "", _user = "", _pass = ""; 
    int odd_resID, even_resID; 
    ListView myList; 

    @Override 
    public void onCreate(Bundle savedInstanceState) { 
     super.onCreate(savedInstanceState); 
     setContentView(R.layout.main); 

     // finding the list view 
     myList = (ListView) findViewById(R.id.myList); 
     myList.setAdapter(new MyCustomAdapter()); 
     myList.setCacheColorHint(0); 

    } 

    class MyCustomAdapter extends BaseAdapter { 

     @Override 
     public int getCount() { 
      return data.length; 
     } 

     @Override 
     public String getItem(int position) { 
      // TODO Auto-generated method stub 
      return null; 
     } 

     @Override 
     public long getItemId(int position) { 
      // TODO Auto-generated method stub 
      return position; 
     } 

     @Override 
     public int getItemViewType(int position) { 
      // TODO Auto-generated method stub 
      return position; 
     } 

     @Override 
     public int getViewTypeCount() { 
      // TODO Auto-generated method stub 
      return data.length; 
     } 

     public View getView(int position, View convertView, ViewGroup parent) { 
      LayoutInflater inflater = getLayoutInflater(); 
      View row; 
      int _intPosition = getItemViewType(position); 
      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; 

      if (_intPosition % 2 == 0) { 
       row = inflater.inflate(R.layout.list_row_layout_even, parent, 
         false); 
       TextView textLabel = (TextView) row.findViewById(R.id.text); 

       textLabel.setText(data[position]); 

      } else { 
       row = inflater.inflate(R.layout.list_row_layout_odd, parent, 
         false); 
       TextView textLabel = (TextView) row.findViewById(R.id.text); 

       textLabel.setText(data[position]); 
      } 

      return (row); 
     } 
    } 

} 
相關問題