Android中具体在FragmentActivity中重写onKeyDown方法。急!!
是这样的,在我的项目中,需要实现一个功能,就是一个主布局里嵌套一些子布局后,其中子布局我不予显示,只有当我点击了主布局里具体的控件后,隐藏主布局,显示特定的子布局,那么我...
是这样的,在我的项目中,需要实现一个功能,就是一个主布局里嵌套一些子布局后,其中子布局我不予显示,只有当我点击了主布局里具体的控件后,隐藏主布局,显示特定的子布局,那么我现在想按返回键返回主布局,再次隐藏子布局。那么问题来了:求教各位大神如何实现,我知道是要重写onKeyDown方法,但是具体不知道怎么写。有没有大神指导下?
展开
- 你的回答被采纳后将获得:
- 系统奖励15(财富值+成长值)+难题奖励30(财富值+成长值)
2个回答
展开全部
@Override
public boolean onKeyDown(int keyCode, KeyEvent event) {
// TODO Auto-generated method stub
if (keyCode == KeyEvent.KEYCODE_BACK
&& event.getAction() == KeyEvent.ACTION_DOWN) {
AlertDialog.Builder builder = new AlertDialog.Builder(MainActivity.this);
builder.setMessage("你确定退出吗?")
.setCancelable(false)
.setPositiveButton("确定",
new DialogInterface.OnClickListener() {
public void onClick(DialogInterface dialog,
int id) {
finish();
System.exit(0);
}
})
.setNegativeButton("返回",
new DialogInterface.OnClickListener() {
public void onClick(DialogInterface dialog,
int id) {
dialog.cancel();
}
});
AlertDialog alert = builder.create();
alert.show();
return true;
}
return super.onKeyDown(keyCode, event);
}
/////////////////////////////////////////////////////////////////
public boolean onKeyDown(int keyCode, KeyEvent event) {
// TODO Auto-generated method stub
if (keyCode == KeyEvent.KEYCODE_BACK
&& event.getAction() == KeyEvent.ACTION_DOWN) {
AlertDialog.Builder builder = new AlertDialog.Builder(MainActivity.this);
builder.setMessage("你确定退出吗?")
.setCancelable(false)
.setPositiveButton("确定",
new DialogInterface.OnClickListener() {
public void onClick(DialogInterface dialog,
int id) {
finish();
System.exit(0);
}
})
.setNegativeButton("返回",
new DialogInterface.OnClickListener() {
public void onClick(DialogInterface dialog,
int id) {
dialog.cancel();
}
});
AlertDialog alert = builder.create();
alert.show();
return true;
}
return super.onKeyDown(keyCode, event);
}
/////////////////////////////////////////////////////////////////
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
2014-10-17
展开全部
public boolean onKeyDown(int keyCode, KeyEvent event) {
if (keyCode == KeyEvent.KEYCODE_BACK
&& event.getRepeatCount() == 0) {
//do something...
return true;
}
return super.onKeyDown(keyCode, event);
}
if (keyCode == KeyEvent.KEYCODE_BACK
&& event.getRepeatCount() == 0) {
//do something...
return true;
}
return super.onKeyDown(keyCode, event);
}
本回答被网友采纳
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询