如何通过点击按钮进行列表视图?

时间:2015-01-29 02:55:17

标签: android xml android-layout listview android-activity

嘿伙计们,我尝试过我的源代码工作,但我总是有这个输出:

  

java.lang.NullPointerException:尝试在空对象引用上调用虚拟方法'android.view.View android.view.View.findViewById(int)'

可以帮帮我吗?

 <RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android"
xmlns:tools="http://schemas.android.com/tools"
android:layout_width="match_parent"
android:layout_height="match_parent"
android:paddingBottom="@dimen/activity_vertical_margin"
android:paddingLeft="@dimen/activity_horizontal_margin"
android:paddingRight="@dimen/activity_horizontal_margin"
android:paddingTop="@dimen/activity_vertical_margin"
tools:context=".Principal" >

<Button
    android:layout_width="73dp"
    android:layout_height="92dp"
    android:id="@+id/like"
    android:background="@drawable/like"
    android:layout_alignParentBottom="true"
    android:layout_alignParentLeft="true"
    android:layout_alignParentStart="true"
    android:layout_alignTop="@+id/rota" />

<Button
    android:layout_width="113dp"
    android:layout_height="82dp"
    android:text="Calcule sua rota"
    android:id="@+id/rota"
    android:layout_gravity="bottom"
    android:layout_alignParentBottom="true"
    android:layout_toRightOf="@+id/like" />

<Button
    android:layout_width="76dp"
    android:layout_height="85dp"
    android:id="@+id/dislike"
    android:background="@drawable/dislike"
    android:layout_alignParentBottom="true"
    android:layout_toEndOf="@+id/rota"
    android:layout_alignTop="@+id/rota"
    android:layout_toRightOf="@+id/rota" />

<ListView
    android:layout_width="wrap_content"
    android:layout_height="wrap_content"
    android:id="@+id/listLike" />

public void preecheListLike() {

    String[] motivoLike = new String[]{
            "Rampa de Acesso","Calçada sem Obstrução","Terreno Plano","Local com Acessibilidade","Ponto de Informações"
    };

    ArrayAdapter<String> adapterL = new ArrayAdapter<String>(this, android.R.layout.simple_list_item_1, motivoLike);
    listaLike = (ListView) view.findViewById(R.id.listLike);
    listaLike.setAdapter(adapterL);

}

2 个答案:

答案 0 :(得分:0)

在没有视图的情况下调用“findViewById(R.id.listLike)”。我认为这应该可以解决你的问题。

答案 1 :(得分:0)

listaLike = (ListView) view.findViewById(R.id.listLike);

什么是&#34;查看&#34;这里? 这行,只是找到一个ID = listlike的视图&#34; view&#34;,如果你的&#34;查看&#34;不是那个ListView的父视图组,你的listview无法从这行代码中找到。 所以,请删除&#34;查看&#34;并尝试。

如果你正在使用ListActivity,请分配ListView ID = android.R.id.list(和@android:id / list in XML)