标签: android-menu

4
推荐指数
1
解决办法
9220
查看次数

ActionBar menuitem按下了背景颜色

我用ActionBarSherlock创建了一个操作栏.我想设置操作栏的样式,这样当我按下menuitem(从溢出中弹出的下拉项目)时,menuitem背景应该会改变颜色.(现在它改为默认的全息蓝色,我希望它是另一种颜色).

经过长时间的googleing和测试,我想到了这个:

themes.xml:

<style name="AppTheme" parent="Holo.Theme">

    <item name="android:popupMenuStyle">@style/PopupMenuStyle</item>
    <item name="popupMenuStyle">@style/PopupMenuStyle</item>
</style>


<style name="PopupMenuStyle" parent="@style/Widget.Sherlock.PopupMenu">
    <item name="android:dropDownSelector">@drawable/menu_selector</item>
</style>
Run Code Online (Sandbox Code Playgroud)

menu_selector.xml:(喜欢abs__list_selector_holo_dark.xml)

<?xml version="1.0" encoding="utf-8"?>
<selector xmlns:android="http://schemas.android.com/apk/res/android">

    <item android:state_window_focused="false" android:drawable="@android:color/transparent" />

    <item android:state_focused="true"  android:state_enabled="false" android:state_pressed="true" android:drawable="@drawable/abs__list_selector_disabled_holo_dark" />
    <item android:state_focused="true"  android:state_enabled="false"                              android:drawable="@drawable/abs__list_selector_disabled_holo_dark" />
    <item android:state_focused="true"                                android:state_pressed="true" android:drawable="@color/AppRed" />
    <item android:state_focused="false"                               android:state_pressed="true" android:drawable="@color/AppRed" />
    <item android:state_focused="true"                                                             android:drawable="@drawable/abs__list_focused_holo" />
    <item                                                              android:drawable="@color/AppRed" />
</selector>
Run Code Online (Sandbox Code Playgroud)

不幸的是,背景仍然变为蓝色而不是红色.我在这里失踪了什么?

android android-menu android-actionbar android-styles

4
推荐指数
1
解决办法
6054
查看次数

android中的invalidateOptionsMenu()有什么用?

当我正在浏览导航抽屉的示例代码时,我是android的新手我发现他调用了方法invalidateOptionsMenu()所以我搜索了它的功能但是找不到答案所以任何人都可以向我介绍它的功能,我们应该知道用那个.

android android-menu

4
推荐指数
2
解决办法
4421
查看次数

在Android中打开浮动菜单(上下文菜单)?

我创建了一个名为drmenu.xml的新菜单.当我按下菜单按钮时它可以正常工作,但我需要在用户按下按钮时打开上下文菜单.下面的代码按钮只显示吐司.

这是我的xml布局:

 <LinearLayout
        android:id="@+id/MenuCall"
        android:layout_width="90dip"
        android:layout_height="match_parent"
        android:gravity="right|center_vertical" >
        <ImageView
            android:id="@+id/MenuCall"
            android:layout_width="wrap_content"
            android:layout_height="wrap_content"
            android:src="@drawable/imageiew6" />
    </LinearLayout>
Run Code Online (Sandbox Code Playgroud)

这是我的java代码:

    final LinearLayout callback_var = (LinearLayout) findViewById(R.id.MenuCall);
    registerForContextMenu(callback_var);
    callback_var.setOnClickListener(new android.view.View.OnClickListener() {

        @Override
        public void onClick(View arg0) {
            // TODO Auto-generated method stub
            Toast.makeText(getApplicationContext(), "this is repeated",      Toast.LENGTH_LONG).show();
            openContextMenu(callback_var);
        }
Run Code Online (Sandbox Code Playgroud)

android android-menu android-contextmenu

4
推荐指数
1
解决办法
9440
查看次数

actionbar setnavigationmode已弃用

嗨,我正在制作一个应用程序,我计划在商场内展示商店的地板和类别明智商品列表.

下面的快照显示了一个显示商店明智地列表的活动 在此输入图像描述

我想在ActionBar中添加一个微调器,显示"by Floor"和"by Category"作为选项.点击"按类别"将根据商店所属的类别来安排商店.谷歌搜索后我找到了一点

getActionBar().setNavigationMode(ActionBar.NAVIGATION_MODE_LIST);
Run Code Online (Sandbox Code Playgroud)

会很贴切,但现在我看到它被弃用,把它作为活动菜单中的一个动作项目看起来不是一个好主意.有什么建议 ?

android android-menu android-spinner android-actionbar

4
推荐指数
1
解决办法
1万
查看次数

刷卡时ViewPager菜单图标延迟

在我的应用程序上的选项卡之间滑动时,菜单图标在出现之前会有明显的延迟.如果我单击选项卡而不是滑动,它们会立即更新.我为每个片段都有不同的menu.xml文件,并在每个片段的onCreateOptionsMenu中对它们进行充气.

@Override
public void onCreateOptionsMenu(Menu menu, MenuInflater inflater) {
    inflater.inflate(R.menu.fodmap_menu, menu);

    final MenuItem item = menu.findItem(R.id.action_search);
    final SearchView searchView = (SearchView) MenuItemCompat.getActionView(item);
    searchView.setOnQueryTextListener(this);
}
Run Code Online (Sandbox Code Playgroud)

在此输入图像描述

请注意,单击选项卡时,图标会立即从溢出变为放大镜,但在滑动时会明显延迟.我希望新选项卡居中后立即更新图标.在Pocket Cast的Discover菜单中,即使在滑动动画完成之前,带有不同菜单图标的选项卡似乎也会加载它们.

android android-menu android-fragments android-viewpager

4
推荐指数
1
解决办法
566
查看次数

带有actionLayout的Android OnCreateOptionsMenu项不起作用

我需要在选项菜单中显示一个布局。

menu.xml

<?xml version="1.0" encoding="utf-8"?>
<menu xmlns:android="http://schemas.android.com/apk/res/android">
    <item
        android:id="@+id/action_likes"
        android:showAsAction="never"
        android:actionLayout="@layout/likes_layout"/>

    <item
        android:id="@+id/settings"
        android:showAsAction="never"
        android:title="Settings"
        />
</menu>
Run Code Online (Sandbox Code Playgroud)

shape_notification.xml

<?xml version="1.0" encoding="utf-8"?>
<shape xmlns:android="http://schemas.android.com/apk/res/android"
    android:shape="oval">
    <stroke android:color="#080808" android:width="2dp"/>
    <corners android:radius="5dp" />
    <solid android:color="#85ea32"/>
</shape>
Run Code Online (Sandbox Code Playgroud)

likes_layout.xml

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

    <TextView
        android:layout_width="match_parent"
        android:layout_height="match_parent"
        android:layout_weight="3"
        android:id="@+id/likes"
        android:linksClickable="false"
        android:text="Likes"
        android:gravity="center_vertical|center_horizontal"
        android:textAppearance="?android:attr/textAppearanceLarge" />

    <Button
        android:layout_width="wrap_content"
        android:layout_height="wrap_content"
        android:layout_weight="5"
        android:layout_gravity="center"
        android:id="@+id/notif_count"
        android:background="@drawable/shape_notification"
        android:text="0"
        android:textSize="16sp"
        android:gravity="center"
        android:padding="2dp"
        android:singleLine="true"
        android:layout_margin="5dp"
        android:textColor="#fff"/>
</LinearLayout>
Run Code Online (Sandbox Code Playgroud)

MainActivity.java

public class MainActivity extends AppCompatActivity {

    @Override
    protected void onCreate(Bundle savedInstanceState) { …
Run Code Online (Sandbox Code Playgroud)

java xml android android-layout android-menu

4
推荐指数
2
解决办法
4516
查看次数

为什么AppCompatActivity.onMenuOpened菜单(int featureId,菜单菜单)为空?

Android应用程序具有以下代码:

public class FooActivity extends AppCompatActivity{
   @Override
    public boolean onMenuOpened(int featureId, Menu menu) {
    }
}
Run Code Online (Sandbox Code Playgroud)

单击3点溢出菜单按钮时,菜单会正常显示,并调用此MenuOpened(int featureId,菜单菜单),但菜单为空.这是正常的吗?

android android-menu

4
推荐指数
1
解决办法
999
查看次数

如何以编程方式更改Android菜单

我有两种不同的菜单布局.我想在单击按钮时更改运行时的膨胀菜单.

最初菜单设置为@menu/navigation.我希望它更改@menu/navigation2为单击按钮时.

activity_main.xml中

<?xml version="1.0" encoding="utf-8"?>
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
    xmlns:app="http://schemas.android.com/apk/res-auto"
    xmlns:tools="http://schemas.android.com/tools"
    android:id="@+id/container"
    android:layout_width="match_parent"
    android:layout_height="match_parent"
    android:orientation="vertical"
    tools:context="th.ac.sd.sdschoolas.MainActivity">

    <FrameLayout
        android:id="@+id/content_main"
        android:layout_width="match_parent"
        android:layout_height="0dp"
        android:layout_weight="1">

        <WebView
            android:id="@+id/web_main"
            android:layout_width="match_parent"
            android:layout_height="match_parent"/>

        <ImageView
            android:id="@+id/imageView"
            android:layout_width="152dp"
            android:layout_height="158dp"
            android:layout_x="23dp"
            android:layout_y="46dp"
            app:srcCompat="@mipmap/logo"
            android:padding="20dp"/>
    </FrameLayout>

    <android.support.design.widget.BottomNavigationView
        android:id="@+id/navigation"
        android:layout_width="match_parent"
        android:layout_height="wrap_content"
        android:layout_gravity="bottom"
        android:background="?android:attr/windowBackground"
        app:menu="@menu/navigation" />

</LinearLayout>
Run Code Online (Sandbox Code Playgroud)

菜单/ navigation.xml

<?xml version="1.0" encoding="utf-8"?>
<menu xmlns:android="http://schemas.android.com/apk/res/android">

    <item
        android:id="@+id/nav1"
        android:icon="@mipmap/homeicon"
        android:title="@string/title_home" />

    <item
        android:id="@+id/nav2"
        android:icon="@mipmap/newsicon01"
        android:title="@string/title_news" />

    <item
        android:id="@+id/nav3"
        android:icon="@drawable/ic_calendar_page_empty"
        android:title="@string/title_cal" />

    <item
        android:id="@+id/nav4"
        android:icon="@drawable/ic_chat_bubbles"
        android:title="@string/title_sms" />

    <item
        android:id="@+id/nav5"
        android:icon="@mipmap/more"
        android:title="@string/title_more" />

</menu>
Run Code Online (Sandbox Code Playgroud)

菜单/ …

android android-menu

4
推荐指数
1
解决办法
2759
查看次数

Android底部导航查看项目文本颜色?

我开始研究Android底部导航视图.但我面临一个问题.如果我向底部导航视图添加了5个项目,则只显示项目文本的选定项目.如果我添加3项,它工作正常.请告诉我如何显示所有5个项目的项目文本.先感谢您.

menu.xml文件:

<menu xmlns:android="http://schemas.android.com/apk/res/android"
    xmlns:app="http://schemas.android.com/apk/res-auto"
    xmlns:tools="http://schemas.android.com/tools"
    tools:context="com.reloadapp.reload.activity.IconTabsActivity">
    <item
        android:id="@+id/action_favorites"
        android:enabled="true"
        android:icon="@drawable/home_40"
        android:title="Home"
        app:showAsAction="ifRoom" />
    <item
        android:id="@+id/action_schedules"
        android:enabled="true"
        android:icon="@drawable/profile_40"
        android:title="Profile"
        app:showAsAction="ifRoom" />
    <item
        android:id="@+id/action_music"
        android:enabled="true"
        android:icon="@drawable/reload_40"
        android:title="Reload cash"
        app:showAsAction="ifRoom" />
    <item
        android:id="@+id/action_musi"
        android:enabled="true"
        android:icon="@drawable/notifications"
        android:title="Notifications"
        app:showAsAction="ifRoom" />
    <item
        android:id="@+id/action_mus"
        android:enabled="true"
        android:icon="@drawable/menu_40"
        android:title="More"
        app:showAsAction="ifRoom" />
</menu>
Run Code Online (Sandbox Code Playgroud)

依赖:编译'com.android.support:appcompat-v7:25.0.1'compile'c​​om.android.support:design:25.0.0'

 <android.support.design.widget.BottomNavigationView
        android:id="@+id/bottom_navigation"
        android:layout_width="match_parent"
        android:layout_height="wrap_content"
        app:itemBackground="@color/textColorPrimary"
        app:menu="@menu/menu_icon_tabs"
        app:itemIconTint="@color/colorPrimary"
        app:itemTextColor="@color/colorPrimary"
        android:layout_alignParentBottom="true">
    </android.support.design.widget.BottomNavigationView>
Run Code Online (Sandbox Code Playgroud)

android android-menu android-support-library android-bottom-nav-view

4
推荐指数
1
解决办法
6386
查看次数