数据已经从数据库返回结果,却没在窗口显示出来,大神帮我看一下.

这是在MainActivity的显示方法

 public class MainActivity extends AppCompatActivity {
    private  ListView listView;
    private PersonService personService;
    @Override
    protected void onCreate(Bundle savedInstanceState) {
        super.onCreate(savedInstanceState);
        setContentView(R.layout.activity_main);
        personService = new PersonService(this);
        listView = (ListView) findViewById(R.id.listView);
        show();
        }

    private void show() {
        List<Person> personList = personService.getScrollDate(1, 20);
        List<HashMap<String,Object>> data= new ArrayList<HashMap<String, Object>>();
        HashMap<String,Object> item;
        for(Person person:personList)
        {
            item = new HashMap<String,Object>();
            item.put("id",person.getId());
            item.put("name",person.getName());
            item.put("phone", person.getPhone());
            data.add(item);
        }
        //适配器用来实现数据与条目,条目与listView的绑定。
        SimpleAdapter simpleAdapter = new SimpleAdapter(this,data,R.layout.item,new String[]{"id","name","phone"},new int[]{R.id.id,R.id.name,R.id.phone});
        listView.setAdapter(simpleAdapter);
    }

这是item.xml内容

 <LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
    android:layout_width="fill_parent"
    android:layout_height="fill_parent"
    android:orientation="horizontal"
    >

    <TextView
        android:layout_width="150dip"
        android:layout_height="wrap_content"
        android:id="@+id/id"
        />
    <TextView
        android:layout_width="100dip"
        android:layout_height="wrap_content"
        android:id="@+id/name"
        />
    <TextView
        android:layout_width="fill_parent"
        android:layout_height="wrap_content"
        android:id="@+id/phone"
        />
</LinearLayout>

这是activity_main.xml内容

 <LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
    android:layout_width="match_parent"
    android:layout_height="match_parent"
    android:orientation="vertical"
  >

    <LinearLayout
        android:layout_width="match_parent"
        android:layout_height="match_parent"
        android:orientation="horizontal"
        >

        <TextView
            android:layout_width="150dip"
            android:layout_height="wrap_content"
            android:text="@string/id"
            />
        <TextView
            android:layout_width="100dip"
            android:layout_height="wrap_content"
            android:text="@string/name"
            />
        <TextView
            android:layout_width="fill_parent"
            android:layout_height="wrap_content"
            android:text="@string/phone"
            />


    </LinearLayout>
<ListView
    android:background="#ff0000"
    android:layout_width="fill_parent"
    android:layout_height="wrap_content"
    android:id="@+id/listView"
    />

</LinearLayout>

6个回答

 <LinearLayout
        android:layout_width="match_parent"
        android:layout_height="match_parent"
        android:orientation="horizontal"
        >

        <TextView
            android:layout_width="150dip"

你的activity_main.xml中的第一个字控件LinearLayout的高度设为match_parent,下面的Listview当然看不到了

先打印data出来看看有没有数据,我猜你没成功获取数据

u010214991
_H_JY 回复恶变133: logcat显示不出来?用toast看一下
大约 5 年之前 回复
u011919606
恶变133 回复_H_JY: 图片中是debug的情况,logcat也没有任何信息
大约 5 年之前 回复
u010214991
_H_JY 回复恶变133: 运行结果是什么样子的
大约 5 年之前 回复
u011919606
恶变133 data已经有数据了,感觉是适配器没能成功绑定数据
大约 5 年之前 回复

图片说明

图片说明

啊啊大神大神大神大神的

asdasdasdasdasd日晷啊实打实大飒飒大

Csdn user default icon
上传中...
上传图片
插入图片
抄袭、复制答案,以达到刷声望分或其他目的的行为,在CSDN问答是严格禁止的,一经发现立刻封号。是时候展现真正的技术了!
立即提问
相关内容推荐