我有两个xml用于可扩展列表视图和listitem。
1) list.xml
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
android:layout_width="match_parent"
android:layout_height="match_parent"
android:background="@drawable/gradient_bg"
android:orientation="vertical" >
<ExpandableListView
android:id="@+id/lvExp"
android:layout_width="match_parent"
android:layout_height="match_parent" />
</LinearLayout>
2)list_group.xml
<RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android"
android:layout_width="fill_parent"
android:layout_height="match_parent">
<TextView
android:id="@+id/lbl"
android:layout_width="wrap_content"
/>
<Button
android:id="@+id/btn_login"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:text="Login"
android:focusable="false" />
</RelativeLayout>
现在我已经创建了以下类,其中我已经为可扩展列表视图编写了所有代码,并且它工作正常但是当我编写btn_login.setOnCliclListener然后它给出强制关闭错误时按钮也是可见的。
Allitem.java
Button btn_login;
@Override
public void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.list);
btn_login = (Button) findViewById(R.id.btn_login);
btn_login.setOnClickListener(new OnClickListener() {
@Override
public void onClick(View v) {
// TODO Auto-generated method stub
}
});
....
....
}
所有工作都很完美,但是当我为该按钮编写setOnClickListener但我得到以下错误
Caused by: java.lang.NullPointerException
at com.example.test.list.onCreate(list.java:45)
所以我怎么能解决这个问题呢?
答案 0 :(得分:1)
You need to handle onClickListener of your list item button in the Adapter of the listview.
答案 1 :(得分:1)
Edit your button variable to btn_print instead Btn_login .. Btn_login is your xml button id..
Button btn_print;
@Override
public void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.list);
btn_print = (Button) findViewById(R.id.btn_login);
btn_print.setOnClickListener(new OnClickListener() {
@Override
public void onClick(View v) {
// TODO Auto-generated method stub
}
});