kindle fire のアプリケーションの場合、画面にソフトキーを配置したくありません。
そのために、マニフェストを次のように更新します
<activity
android:name=".MainActivity"
android:label="@string/title_activity_main"
android:screenOrientation="landscape"
android:theme="@android:style/Theme.NoTitleBar.Fullscreen">
<intent-filter>
<action android:name="android.intent.action.MAIN" />
<category android:name="android.intent.category.LAUNCHER" />
<category android:name="android.intent.category.DEFAULT" />
<category android:name="android.intent.category.HOME" />
<category android:name="android.intent.category.LAUNCHER" />
</intent-filter>
</activity>
コード:
@Override
public void onCreate(Bundle savedInstanceState) {
requestWindowFeature(Window.FEATURE_NO_TITLE);
super.onCreate(savedInstanceState);
getWindow().setFlags(WindowManager.LayoutParams.FLAG_FULLSCREEN, WindowManager.LayoutParams.FLAG_FULLSCREEN);
setContentView(R.layout.activity_main);
myLayout = (LinearLayout) findViewById(R.id.myLayout);
myLayout.setBackgroundResource(R.drawable.bgfinal);
createMainView();
}
@Override
public void onAttachedToWindow()
{
this.getWindow().setType(WindowManager.LayoutParams.FLAG_FULLSCREEN);
super.onAttachedToWindow();
}
@Override
public boolean onKeyDown(int keyCode, KeyEvent event) {
return false;
}
public void createMainView()
{
LinearLayout HomePage = new LinearLayout(this);
HomePage.setOrientation(LinearLayout.VERTICAL);
HomePage.setLayoutParams(new LayoutParams( LayoutParams.FILL_PARENT, LayoutParams.WRAP_CONTENT));
myLayout.addView(HomePage);
TextView name = new TextView(this);
name.setGravity(Gravity.CENTER);
name.setMinHeight(46);
HomePage.addView(name);
LinearLayout HomePageHorLayOut = new LinearLayout(this);
HomePageHorLayOut.setOrientation(LinearLayout.HORIZONTAL);
HomePageHorLayOut.setLayoutParams(new LayoutParams( LayoutParams.FILL_PARENT, LayoutParams.WRAP_CONTENT));
HomePage.addView(HomePageHorLayOut);
TextView name1 = new TextView(this);
name1.setGravity(Gravity.CENTER);
name1.setText(" ");
name1.setWidth(274);
HomePageHorLayOut.addView(name1);
final Button PIBtn=new Button(this);
PIBtn.setBackgroundResource(R.drawable.pilatest);
PIBtn.setLayoutParams(new LayoutParams( LayoutParams.WRAP_CONTENT, LayoutParams.WRAP_CONTENT));
HomePageHorLayOut.addView(PIBtn);
PIBtn.setOnClickListener(new View.OnClickListener() {
public void onClick(View v) {
startActivity(new Intent(android.provider.Settings.ACTION_DATE_SETTINGS));
}
});
}
この場合、アプリケーションが起動されるたびに画面にソフトキーがありませんが、ボタンが押されるたびに、kindle fire によってユーザーは時間設定フレームに移動し、アプリケーションに戻ってもソフトキーは非表示になりません。
ほぼ同じ問題がすでに報告されていることがわかりましたが、その回答を試してみましたが、結果は同じでした。
設定からメイン アプリケーションに戻るときにソフトキーを非表示にするオプションはありますか?