重写了一个dialog窗口,并在上面布置了一些图片。想通过输入数字(按数字键)并调用显示相应的图片,但是总是不成功。
下面是要实现的效果图
输入数字前:输入数字后(例如输入1):这是代码:
private void InputPassword() {
final ImageView passLightImage;
LayoutInflater inflater = getLayoutInflater();
View dialogLayout = inflater.inflate(R.layout.input_password_layout, (ViewGroup) findViewById(R.id.input_password_dialog_id));
final CustomDialog passwordDialog = new CustomDialog(this);
Window dialogWindow = passwordDialog.getWindow();
dialogWindow.setGravity(Gravity.CENTER_VERTICAL );
LayoutParams params = new LayoutParams(300, 150);
passwordDialog.setCanceledOnTouchOutside(false);
passwordDialog.show();
passwordDialog.addContentView(dialogLayout, params);
passLightImage = (ImageView) findViewById(R.id.pass_light_id);
passwordDialog.setOnKeyListener(new OnKeyListener() {
public boolean onKey(DialogInterface dialog, int keyCode,
KeyEvent event) {
// TODO Auto-generated method stub
if (event.getAction() == KeyEvent.ACTION_DOWN){
switch (keyCode) {
case KeyEvent.KEYCODE_1:
// passLightImage.setVisibility(View.VISIBLE);
// passLightImage.setAlpha(0);
passLightImage.getBackground().setAlpha(0);
// passLightImage.setVisibility(View.GONE);
passLightImage.setImageResource(R.drawable.pass_light);
System.out.println("It's 1");
// break;
return true; case KeyEvent.KEYCODE_2:
System.out.println("It's 2");
break; case KeyEvent.KEYCODE_7:
System.out.println("It's 3");
break; case KeyEvent.KEYCODE_6:
System.out.println("It's 4");
break; default:
break;
}
}
return false;
}
});
}
下面是要实现的效果图
输入数字前:输入数字后(例如输入1):这是代码:
private void InputPassword() {
final ImageView passLightImage;
LayoutInflater inflater = getLayoutInflater();
View dialogLayout = inflater.inflate(R.layout.input_password_layout, (ViewGroup) findViewById(R.id.input_password_dialog_id));
final CustomDialog passwordDialog = new CustomDialog(this);
Window dialogWindow = passwordDialog.getWindow();
dialogWindow.setGravity(Gravity.CENTER_VERTICAL );
LayoutParams params = new LayoutParams(300, 150);
passwordDialog.setCanceledOnTouchOutside(false);
passwordDialog.show();
passwordDialog.addContentView(dialogLayout, params);
passLightImage = (ImageView) findViewById(R.id.pass_light_id);
passwordDialog.setOnKeyListener(new OnKeyListener() {
public boolean onKey(DialogInterface dialog, int keyCode,
KeyEvent event) {
// TODO Auto-generated method stub
if (event.getAction() == KeyEvent.ACTION_DOWN){
switch (keyCode) {
case KeyEvent.KEYCODE_1:
// passLightImage.setVisibility(View.VISIBLE);
// passLightImage.setAlpha(0);
passLightImage.getBackground().setAlpha(0);
// passLightImage.setVisibility(View.GONE);
passLightImage.setImageResource(R.drawable.pass_light);
System.out.println("It's 1");
// break;
return true; case KeyEvent.KEYCODE_2:
System.out.println("It's 2");
break; case KeyEvent.KEYCODE_7:
System.out.println("It's 3");
break; case KeyEvent.KEYCODE_6:
System.out.println("It's 4");
break; default:
break;
}
}
return false;
}
});
}
解决方案 »
- 有人做过三星的odroid平台的方案吗?help!!!!
- 求问android反编译的dex2jar运行后jd-gui里面中文乱码怎么解决??
- Android 动态修改页面切换动画的持续时间
- android 编程出现的小问题
- 关于安卓手机网站客户端开发的问题
- ViewPager和Fragment
- android phonegap框架下 实现 websocket
- Android TextView显示泰语高度变化显示不全的问题
- 如何将layout_width关联到layout_height
- 想做一个app关于ftp传文件的
- android service中能否进行模拟按键?
- android Sensor 问题请教
谢谢你啦!不过,怎么把软件的所有设置状态都保存起来??
public class Calc extends Activity { public static final String PREFS_NAME = "MyPrefsFile"; @Override protected void onCreate(Bundle state){ super.onCreate(state); . . . // Restore preferences SharedPreferences settings = getSharedPreferences(PREFS_NAME, 0); boolean silent = settings.getBoolean("silentMode", false); setSilent(silent); } @Override protected void onStop(){ super.onStop(); // We need an Editor object to make preference changes. // All objects are from android.context.Context SharedPreferences settings = getSharedPreferences(PREFS_NAME, 0); SharedPreferences.Editor editor = settings.edit(); editor.putBoolean("silentMode", mSilentMode); // Commit the edits! editor.commit(); }}
public static final String PREFS_NAME = "MyPrefsFile";
@Override
protected void onCreate(Bundle state){
super.onCreate(state);
. . .
// Restore preferences
SharedPreferences settings = getSharedPreferences(PREFS_NAME, 0);
boolean silent = settings.getBoolean("silentMode", false);
setSilent(silent);
}
@Override
protected void onStop(){
super.onStop();
// We need an Editor object to make preference changes.
// All objects are from android.context.Context
SharedPreferences settings = getSharedPreferences(PREFS_NAME, 0);
SharedPreferences.Editor editor = settings.edit();
editor.putBoolean("silentMode", mSilentMode);
// Commit the edits!
editor.commit();
}
}