Lee*_*eem 3 android android-widget android-manifest android-emulator android-layout
我有一个自定义对话框,如下所述.
我的自定义对话框布局(*my_dialog.xml*)仅包含"关闭"按钮:
<?xml version="1.0" encoding="utf-8"?>
<RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_gravity="center_horizontal"
>
<Button
android:id="@+id/dismiss_btn"
android:layout_width="100dip"
android:layout_height="30dip"
android:layout_centerHorizontal="true"
android:text="Dismiss me"
android:textSize="8dip"
android:textColor="#ffffff"
/>
</RelativeLayout>
Run Code Online (Sandbox Code Playgroud)
我的对话框视图类:
public class MyDialog extends Dialog{
public MyDialog(Context context){
super(context);
}
@Override
protected void onCreate(Bundle savedInstanceState){
super.onCreate(savedInstanceState);
setContentView(R.layout.my_dialog);
Button dismissMeBtn = (Button)findViewById(R.id.dismiss_btn);
/** ERROR Message when set onClickListener below (throw by eclipse editor)**/
// The method setOnClickListener(View.OnClickListener) in the
// type View is not applicable for the arguments (new DialogInterface.OnClickListener(){})
dismissMeBtn.setOnClickListener(new OnClickListener() {
@Override
public void onClick(View v) {
MyDialog.this.dismiss();
}
});
getWindow().setLayout(LayoutParams.WRAP_CONTENT, LayoutParams.WRAP_CONTENT);
}
}
Run Code Online (Sandbox Code Playgroud)
如上面的代码所示,我在对话框上有一个" *dismiss_btn* "按钮,我想在按下"关闭"按钮时关闭对话框,但是当setOnClickListener为关闭按钮时,我的代码中出现错误(如图所示)在代码中).
错误消息(eclipse编辑器抛出错误):
类型View中的方法setOnClickListener(View.OnClickListener)不适用于参数(new DialogInterface.OnClickListener(){})
为什么我收到错误?为什么我不能在对话框视图中为按钮设置onClickListener?
mat*_*joe 27
因为eclipse认为它是DialogInterface onClickListener但你需要一个View onClickListener所以它将是
dismissMeBtn.setOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View v) {
MyDialog.this.dismiss();
}
});
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
15640 次 |
| 最近记录: |