En mi aplicación, inicialmente tengo un botón en la pantalla, y en onclick
del botón, se debe abrir una ventana emergente. En la ventana emergente, tengo un botón de imagen, y onclick
de este botón, quiero comenzar una actividad. Se abre la ventana emergente, pero no entiendo cómo manejar el onclick
del botón imagen dentro de la ventana emergente.cómo manejar el evento onclick del botón dentro de la ventana emergente en android
En main.xml, tengo un botón, y en popup_example.xml, tengo un botón de imagen.
códigoMi Java es la siguiente:
final LayoutInflater inflater = (LayoutInflater)this.getSystemService(Context.LAYOUT_INFLATER_SERVICE);
final Button b=(Button)findViewById(R.id.btn);
b.setOnClickListener(new OnClickListener()
{
public void onClick(View v)
{
PopupWindow pw = new PopupWindow(inflater.inflate(R.layout.popup_example,(ViewGroup)findViewById(R.layout.main)));
pw.showAtLocation(v, Gravity.LEFT,0,0);
pw.update(8,-70,150,270);
//if onclick written here, it gives null pointer exception.
ImageButton img=(ImageButton)findViewById(R.id.home);
img.setOnClickListener(new OnClickListener()
{
public void onClick(View v)
{
Intent.....
}
});
//if onclick is written here it gives runtime exception.
});
y tengo dos diseños xml .........
Main.xml
<?xml version="1.0" encoding="utf-8"?> <LinearLayout xmlns:android="http://schemas.android.com/apk/res/android" android:orientation="vertical" android:layout_width="fill_parent" android:layout_height="wrap_content"> <ImageButton android:id="@+id/btn" android:layout_width="wrap_content" android:layout_height="wrap_content" android:src="@drawable/ghj" /> </LinearLayout>
popup_example.xml
<?xml version="1.0" encoding="utf-8"?> <LinearLayout xmlns:android="http://schemas.android.com/apk/res/android" android:orientation="vertical" android:padding="10dip" android:layout_width="fill_parent" android:layout_height="wrap_content" android:background="#8E2323"> <TableLayout xmlns:android="http://schemas.android.com/apk/res/android" android:orientation="vertical" android:layout_width="wrap_content" android:layout_height="wrap_content" android:padding="5px"> <TableLayout xmlns:android="http://schemas.android.com/apk/res/android" android:orientation="vertical" android:layout_width="wrap_content" android:layout_height="wrap_content" android:padding="5px" android:background="#000000"> <ImageButton android:id="@+id/home" android:layout_width="wrap_content" android:layout_height="wrap_content" android:focusable="true" android:src="@drawable/vitalss" android:layout_weight="1" android:background="#8E2323"/> </TableLayout> </TableLayout> </LinearLayout>
hey muchas gracias! Esto funciona. – henna