カスタムダイアログ風のサンプル
正確にはオーバーレイを使用したダイアログ風のポップアップ。
ダイアログを使用するよりも、ビューを使用したほうが柔軟性が高い。
<uses-permission android:name="android.permission.SYSTEM_ALERT_WINDOW" />
private View view = null;
private WindowManager mWindowManager = null;
private Button btn;
private CheckBox chk;
private boolean LFL = false;
public void showView(Context cn,WindowManager wm) {
mWindowManager=wm;
if (LFL == false) {
LFL = true;
//インフレータ
LayoutInflater inflater = LayoutInflater
.from(cn);
// レイアウトXMLインフレート
view = inflater.inflate(R.layout.main_list, null);
btn = (Button) view.findViewById(R.id.list_toji);
chk = (CheckBox) view.findViewById(R.id.list_soku);
view.findViewById(R.id.list_toji).setOnClickListener(this);
view.findViewById(R.id.list_soku).setOnClickListener(this);
LayoutParams params = new LayoutParams();
// 全画面
params.width = LayoutParams.MATCH_PARENT;
params.height = LayoutParams.MATCH_PARENT;
params.type = LayoutParams.TYPE_PHONE;
if (mWindowManager == null) {
mWindowManager = (WindowManager) cn
.getSystemService(Context.WINDOW_SERVICE);
}
mWindowManager.addView(view, params);
} else {
mWindowManager.removeView(view);
}
}
public void toji(){
if(LFL){
LFL = false;
mWindowManager.removeView(view);
}
}
0 件のコメント:
コメントを投稿