1.主布局檔案activity_popup_window.xml:
<relativelayout
xmlns:android
=""xmlns: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
="com.example.androidui.popupwindowactivity"
>
<
button
android:id
="@+id/button1"
android:layout_width
="wrap_content"
android:layout_height
="wrap_content"
android:layout_alignparenttop
="true"
android:layout_centerhorizontal
="true"
android:layout_margintop
="14dp"
android:text
="button"
/>
relativelayout
>
2.彈出視窗的布局檔案view_popup_window.xml:
<?xml version="1.0" encoding="utf-8"
?>
<
linearlayout
xmlns:android
=""android:layout_width
="match_parent"
android:layout_height
="match_parent"
android:orientation
="vertical"
>
<
radiogroup
android:id
="@+id/radiogroup1"
android:layout_width
="wrap_content"
android:layout_height
="wrap_content"
android:layout_gr**ity
="center"
>
<
radiobutton
android:id
="@+id/radio0"
android:layout_width
="wrap_content"
android:layout_height
="wrap_content"
android:checked
="true"
android:text
="蘇州"
/>
<
radiobutton
android:id
="@+id/radio1"
android:layout_width
="wrap_content"
android:layout_height
="wrap_content"
android:text
="上海"
/>
<
radiobutton
android:id
="@+id/radio2"
android:layout_width
="wrap_content"
android:layout_height
="wrap_content"
android:text
="北京"
/>
radiogroup
>
linearlayout
>
3.activity**:
publicclass popupwindowactivity extends
activity
});button button =(button) findviewbyid(r.id.button1);
button.setonclicklistener(
newview.onclicklistener()
else
}});
}}
#遇到的問題:
使用findviewbyid(r.id.radiogroup1)時導致程式崩潰。
#原因:
使用findviewbyid(r.id.radiogroup1)時預設呼叫當前的layout檔案生成的view物件對元件初始化,但在當前layout布局檔案中沒有定義r.id.radiogroup1所以會導致程式崩潰。
#解決辦法:
例項化r.id.radiogroup1所在layout布局檔案:
layoutinflater.from(context).inflate(resource, root).findviewbyid(id)
用該layout布局檔案的例項載入r.id.radiogroup1元件。
這也解釋了問什麼相同layout檔案中不可有相同id,不同layout檔案中可以有相同id的問題,因為不同layout中相同id的元件是用與其元件相對應的layout布局檔案的例項載入的。
彈出PopupWindow後讓背景變暗的方法
在android上使用alertdialog和popupwindow都可以很方便的實現彈窗,alertdialog彈出後背景會變暗,而popupwindow不具有此特性。stackoverflow上的這個問題 裡給出了三種方法以實現彈出popupwindow後讓背景變暗的效果,整理如下。1.方法一 ...
PopupWindow軟鍵盤彈出,上移
在popupwindow彈出後,又彈出軟鍵盤會導致 popupwindow往上移動,偏離之前的位置,解決方法 1.新增如下 popupwindow.inputmethodmode popupwindow.input method needed2.在activity 的mainfest檔案中新增 an...
ajax彈出視窗提示與彈出視窗
如果用了updatepanel 彈出的寫法 scriptmanager.registerstartupscript this.updatepanel1,page.gettype alert 彈出提示 true scriptmanager.registerstartupscript this.upda...