listview相關,新手安卓開發求助帖

本人剛入門安卓開發,在把item添加到listview之後,無法正常顯示,在手機上調試的結果是全空白,什麼都沒有。求大神指教,感激不盡代碼如下:

listview.xml

<?xml version="1.0" encoding="utf-8"?>
<LinearLayout  xmlns:android="http://schemas.android.com/apk/res/android" 
    android:id="@+id/LinearLayout01"   
    android:layout_width="match_parent"   
    android:layout_height="match_parent"  >  
<ListView 
    android:layout_width="match_parent"
    android:layout_height="match_parent" 
    android:id="@+id/listview1">
  </ListView>
</LinearLayout>


testb.xml(放的是相關item)

<?xml version="1.0" encoding="utf-8"?>
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
    android:layout_width="match_parent"
    android:layout_height="match_parent">


        <ImageView
            android:id="@+id/img"
            android:layout_width="100dp"
            android:layout_height="50dp"
            />


        <LinearLayout
            android:layout_width="160dp"
            android:layout_height="wrap_content"
            android:orientation="vertical" >

            <TextView
                android:id="@+id/textView_name"
                android:layout_width="160dp"
                android:layout_height="25dp"
                android:gravity="center_vertical"
                android:textColor="#ffffff00"
                android:textSize="18dp" />

            <TextView
                android:id="@+id/textView_message"
                android:layout_width="160dp"
                android:layout_height="25dp"
                android:gravity="center_vertical"
                />
        </LinearLayout>

        <Button
            android:id="@+id/button_message"
            android:layout_width="match_parent"
            android:layout_height="50dp"
            android:textColor="#ffffffff"
            android:background="#ffff00ff"
            android:text="@string/send_message" />

</LinearLayout>


TestB.java

package com.example.testb;

import java.util.ArrayList;
import java.util.HashMap;
import java.util.List;
import java.util.Map;


import android.app.Activity;
import android.app.ListActivity;
import android.content.Context;
import android.os.Bundle;
import android.view.LayoutInflater;
import android.view.View;
import android.view.ViewGroup;
import android.widget.BaseAdapter;
import android.widget.Button;
import android.widget.ImageView;
import android.widget.ListView;
import android.widget.SimpleAdapter;
import android.widget.TextView;
import android.widget.Toast;


public class TestB extends Activity {
Button button_message;
ImageView img;
TextView textView_name;
TextView textView_message;
private List<Map<String, Object>> mData;
@Override
protected void onCreate(Bundle savedInstanceState) {
// TODO Auto-generated method stub
super.onCreate(savedInstanceState);
setContentView(R.layout.listview);
MyAdapter adapter = new MyAdapter(this);
setListAdapter(adapter);

}
 
private void setListAdapter(MyAdapter adapter) {
// TODO Auto-generated method stub

}

private List<Map<String, Object>> getData() {
       List<Map<String, Object>> list = new ArrayList<Map<String, Object>>();
       for(int i=0;i<50;i++)  
       {  
           Map<String, Object> map = new HashMap<String, Object>();  
           map.put("img", R.drawable.qq_btn_0); 
           map.put("textView_name", "聯繫人"+i);  
           map.put("text_message", "聊天信息 ");  
           list.add(map);  
       }
return list;  
}
 
public final class ViewHolder{
       public ImageView img;
       public TextView textView_name;
       public TextView textView_message;
       public Button button_message;
   }
public class MyAdapter extends BaseAdapter{
 
       private LayoutInflater mInflater;
        
       public MyAdapter(Context context){
           this.mInflater = LayoutInflater.from(context);
       }
       @Override
       public int getCount() {
           // TODO Auto-generated method stub
           return mData.size();
       }
 
       @Override
       public Object getItem(int arg0) {
           // TODO Auto-generated method stub
           return null;
       }
 
       @Override
       public long getItemId(int arg0) {
           // TODO Auto-generated method stub
           return 0;
       }
       @Override
       public View getView(int position, View convertView, ViewGroup parent) {
            
           ViewHolder holder = null;
           if (convertView == null) {
                
               holder=new ViewHolder();  
                
               convertView = mInflater.inflate(R.layout.testb, null);
               holder.img = (ImageView)convertView.findViewById(R.id.img);
               holder.textView_name = (TextView)convertView.findViewById(R.id.textView_name);
               holder.textView_message = (TextView)convertView.findViewById(R.id.textView_message);
               holder.button_message = (Button)convertView.findViewById(R.id.button_message);
               convertView.setTag(holder);
           }else {
                
               holder = (ViewHolder)convertView.getTag();
           }
            
           holder.img.setBackgroundResource((Integer)mData.get(position).get("img"));
           holder.textView_name.setText((String)mData.get(position).get("textView_name"));
           holder.textView_message.setText((String)mData.get(position).get("textView_message"));
           return convertView;
       }
}
}



 


發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章