gpt4 book ai didi

Android 选项菜单应该保留,即使我们点击它下面的 peference 菜单

转载 作者:行者123 更新时间:2023-11-29 22:16:21 24 4
gpt4 key购买 nike

我在 android 中创建了一个选项菜单。我已经编写了在 Activity 开始时弹出菜单的代码。但问题是当我点击它下面的首选项菜单时,选项菜单会消失。我希望他的选项菜单在我的菜单页面上保持不变,即使我单击 Activity 页面或页面上的首选项也是如此。请帮助。

这是我的 xml 代码:

  <menu xmlns:android="http://schemas.android.com/apk/res/android">
<item android:id="@+id/icon"
android:icon="@drawable/icon" />
<item android:id="@+id/text"
android:title="Text" />
<item android:id="@+id/icontext"
android:title="Icon and text"
android:icon="@drawable/icon" />
</menu>

Java代码:

 public void onAttachedToWindow()
{
super.onAttachedToWindow();
openOptionsMenu();
}

@Override
public boolean onCreateOptionsMenu(Menu menu)
{
MenuInflater inflater = getMenuInflater();
inflater.inflate(R.menu.menu, menu);
return true;
}

最佳答案

如果您想在屏幕底部放置固定按钮,您有多种选择。您可以在底部放置一个 LinearLayout 或使用 alignParentBottom=trueRelativeLayout。无论如何,OptionsMenu 应该只在按下选项键时显示,并在按下 optionsItem 或按下返回键时关闭。任何其他实现方式都会损害 Android 的用户体验。

这是(部分)我在 ScrollView 中使用不同选项创建的首选项页面和底部的保存按钮:

<?xml version="1.0" encoding="utf-8"?>
<RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android"
android:layout_width="fill_parent"
android:layout_height="fill_parent"
android:orientation="vertical" >

<TextView
android:id="@+id/titleTextView"
android:layout_width="fill_parent"
android:layout_height="50dp"
android:layout_alignParentTop="true"
android:background="@drawable/background_blue_gradient"
android:gravity="center"
android:text="Preferences"
android:textColor="@color/white"
android:textSize="16dp"
android:textStyle="bold" />

<ScrollView
android:layout_width="fill_parent"
android:layout_height="fill_parent"
android:layout_above="@+id/preferencesSaveButton"
android:layout_below="@id/titleTextView" >

<LinearLayout
android:layout_width="fill_parent"
android:layout_height="fill_parent"
android:orientation="vertical" >

<LinearLayout
android:layout_width="fill_parent"
android:layout_height="wrap_content"
android:layout_below="@id/titleTextView"
android:paddingBottom="0dp"
android:paddingLeft="10dp"
android:paddingRight="10dp"
android:paddingTop="10dp"
android:weightSum="2" >

<TextView
android:layout_width="0dp"
android:layout_height="wrap_content"
android:layout_gravity="center_vertical"
android:layout_weight="1.2"
android:text="Activate Notifications" />

<View
android:layout_width="0dp"
android:layout_height="wrap_content"
android:layout_weight="0.2" />

<ToggleButton
android:id="@+id/allowAlertsToggleButton"
android:layout_width="0dp"
android:layout_height="wrap_content"
android:layout_gravity="center_vertical"
android:layout_weight="0.6"
android:textOff="No"
android:textOn="Yes" />
</LinearLayout>

<LinearLayout
android:layout_width="fill_parent"
android:layout_height="wrap_content"
android:paddingBottom="0dp"
android:paddingLeft="10dp"
android:paddingRight="10dp"
android:paddingTop="10dp"
android:weightSum="2" >

<TextView
android:id="@+id/alertDelayTextView"
android:layout_width="0dp"
android:layout_height="wrap_content"
android:layout_gravity="center_vertical"
android:layout_weight="0.8"
android:text="Notifications Delay" />

<View
android:layout_width="0dp"
android:layout_height="wrap_content"
android:layout_weight="0.2" />

<Spinner
android:id="@+id/alertDelaySpinner"
android:layout_width="0dp"
android:layout_height="wrap_content"
android:layout_gravity="center_vertical"
android:layout_weight="1"
android:entries="@array/alert_intervals" />
</LinearLayout>

<LinearLayout
android:layout_width="fill_parent"
android:layout_height="wrap_content"
android:paddingBottom="0dp"
android:paddingLeft="10dp"
android:paddingRight="10dp"
android:paddingTop="10dp" >

<CheckBox
android:id="@+id/allowAutostartCheckBox"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_gravity="center_vertical" />

<View
android:layout_width="20dp"
android:layout_height="wrap_content" />

<TextView
android:id="@+id/allowAutostartTextView"
android:layout_width="fill_parent"
android:layout_height="wrap_content"
android:layout_gravity="center_vertical"
android:text="Auto start on boot" />
</LinearLayout>
</LinearLayout>
</ScrollView>

<Button
android:id="@id/preferencesSaveButton"
android:layout_width="fill_parent"
android:layout_height="wrap_content"
android:layout_alignParentBottom="true"
android:layout_gravity="center_horizontal"
android:layout_marginBottom="10dp"
android:layout_marginLeft="20dp"
android:layout_marginRight="20dp"
android:layout_marginTop="10dp"
android:padding="15dp"
android:text="Save"
android:textStyle="bold" />

</RelativeLayout>

关于Android 选项菜单应该保留,即使我们点击它下面的 peference 菜单,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/8382247/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com