Tôi mới dùng Android và tôi nhận ngoại lệ con trỏ null khi gọi onclicklistener của một nút bên trong hộp thoại. tôi nên làm gì.Cách đặt nút onclicklistener nằm trong hộp thoại tùy chỉnh
btn_add.setOnClickListener(new OnClickListener() {
@Override
public void onClick(View v) {
Dialog d=new Dialog(MainActivity.this);
d.setContentView(R.layout.activity_main);
d.setTitle("Add content");
d.show();
btnsubmit = (Button) findViewById(R.id.btn_submit);
btnsubmit.setOnClickListener(new OnClickListener() {
@Override
public void onClick(View v) {
String name = etName.getText().toString();
String phoneNo = etPhone.getText().toString();
String query = "INSERT INTO PHONE_CONTACTS(name,phone) values ('"
+ name + "','" + phoneNo + "')";
sqlHandler.executeQuery(query);
showList();
etName.setText("");
etPhone.setText("");
}
});
}
});
Tôi thực sự sẽ đánh giá cao sự trợ giúp của bạn. đây là cách xml thoại của tôi trông giống như: -
<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:paddingLeft="@dimen/activity_horizontal_margin"
android:paddingRight="@dimen/activity_horizontal_margin"
android:paddingTop="@dimen/activity_vertical_margin"
android:paddingBottom="@dimen/activity_vertical_margin"
tools:context=".MainActivity">
<TableLayout
android:layout_width="match_parent"
android:layout_height="wrap_content" >
<TableRow
android:id="@+id/tableRow1"
android:layout_width="wrap_content"
android:layout_height="wrap_content" >
<TextView
android:id="@+id/textView1"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:text="@string/name" />
<EditText
android:id="@+id/et_name"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:ems="10" >
</EditText>
</TableRow>
<TableRow
android:id="@+id/tableRow2"
android:layout_width="wrap_content"
android:layout_height="wrap_content" >
<TextView
android:id="@+id/textView1"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:text="@string/phone" />
<EditText
android:id="@+id/et_phone"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:ems="10" >
</EditText>
</TableRow>
<Button
android:id="@+id/btn_submit"
android:layout_width="80dp"
android:layout_height="40dp"
android:text="@string/submit"
android:layout_centerVertical="true"
android:layout_centerHorizontal="true"/>
</TableLayout>
</RelativeLayout>
gửi stack trace để xác nhận tôi đoán NullPointerException cho nút khởi tạo. – Raghunandan