【发布时间】:2016-07-18 05:02:01
【问题描述】:
您好,我正在开发一个应用程序,其中我在活动上使用对话框,对话框有一个按钮,但是当我想使用 OnClickListener(来自活动)时,它不起作用。我尝试在互联网上搜索解决此问题的方法,但找不到合适的方法来实现它。那么任何人都可以建议一种这样做的方法......
public void btnStartDialog(View view) {
final Dialog dialog = new Dialog(this);
dialog.requestWindowFeature(Window.FEATURE_NO_TITLE);
dialog.setContentView(R.layout.custom_dialog);
final VideoView videoview = (VideoView) dialog.findViewById(R.id.videoView);
Uri uri = Uri.parse("android.resource://" + getPackageName() + "/" + R.raw.video);
videoview.setVideoURI(uri);
videoview.start();
videoview.requestFocus();
final Button stop = (Button)dialog.findViewById(R.id.btnStop);
stop.setOnClickListener(
new View.OnClickListener() {
@Override
public void onClick(View v) {
videoview.stopPlayback();
dialog.dismiss();
}
});
dialog.show();
Thread timerThread = new Thread() {
public void run() {
try {
sleep(34800);
} catch (InterruptedException e) {
e.printStackTrace();
} finally {
videoview.stopPlayback();
dialog.dismiss();
//close();
}
}
};
timerThread.start();
}
BTN XML:
<android.support.design.widget.FloatingActionButton
android:layout_width="56dp"
android:layout_height="56dp"
android:src="@drawable/fab_plus"
app:backgroundTint="#d20b0d"
app:borderWidth="0dp"
app:elevation="10dp"
app:fabSize="normal"
android:onClick="btnStartDialog"
app:pressedTranslationZ="12dp"
android:layout_alignParentBottom="true"
android:layout_centerHorizontal="true"
android:layout_marginBottom="10dp" />
【问题讨论】:
-
将
dialog.show();移到clickListener下方。 -
保留你的代码行 dialog.show() ;在最后的 Button stop = (Button)dialog.findViewById(R.id.btnStop); onclicklistener 下方的行(或)
-
不工作,同样的问题:(
标签: android button dialog onclicklistener