我有以下Android菜单XML文件:
<?xml version="1.0" encoding="utf-8"?>
<menu xmlns:android="http://schemas.android.com/apk/res/android">
<item android:id="@+id/programma"
android:icon="@android:drawable/ic_menu_agenda"
android:title="@string/programma" />
<item android:id="@+id/settings"
android:icon="@android:drawable/ic_menu_preferences"
android:title="@string/settings" />
<item android:id="@+id/help"
android:icon="@android:drawable/ic_menu_help"
android:title="@string/help" />
</menu>
Run Code Online (Sandbox Code Playgroud)
这给了我一行三个菜单按钮.但是,我想将它们分成两行,第一行有2个按钮,整个底行有帮助按钮.我已经尝试过对前两个进行分组,但这并没有成功.如何在XML中强制换行?
我有这个代码来创建菜单:
@Override
public boolean onCreateOptionsMenu(Menu menu) {
super.onCreateOptionsMenu(menu);
MenuInflater inflater = getMenuInflater();
inflater.inflate(R.menu.tip_menu, menu);
return true;
}
@Override
public boolean onOptionsItemSelected(MenuItem item) {
switch (item.getItemId()) {
case MNU_PREV:
animateTextViewsPrev();
break;
case MNU_NEXT:
animateTextViewsNext();
break;
}
return true;
}
Run Code Online (Sandbox Code Playgroud)
和XML:
<?xml version="1.0" encoding="utf-8"?>
<menu xmlns:android="http://schemas.android.com/apk/res/android" >
<item android:id="@+id/prev_tip" android:title="@string/prevTip"></item>
<item android:id="@+id/next_tip" android:title="@string/nextTip"></item>
</menu>
Run Code Online (Sandbox Code Playgroud)
在具有Android 2.1的智能手机中,菜单是可见的,但在其他移动设备中,4.1.1是不可见的.有人现在该怎么解决呢?
尝试在我的项目中实现操作栏时出现以下错误.关于Action Bar我不太了解,有人可以给我一些帮助链接
我的清单
<manifest xmlns:android="http://schemas.android.com/apk/res/android"
package="com.androidaz.scanner"
android:versionCode="1"
android:versionName="1.0" >
<uses-sdk android:minSdkVersion="8"
android:targetSdkVersion="11"/>
<uses-permission android:name="android.permission.CAMERA"/>
<uses-permission android:name="android.permission.INTERNET"/>
<uses-permission android:name="android.permission.ACCESS_NETWORK_STATE" />
<uses-permission android:name="android.permission.VIBRATE"/>
<uses-permission android:name="android.permission.FLASHLIGHT"/>
<uses-permission android:name="android.permission.READ_CONTACTS"/>
<uses-permission android:name="com.android.browser.permission.READ_HISTORY_BOOKMARKS"/>
<uses-permission android:name="android.permission.WRITE_EXTERNAL_STORAGE"/>
<uses-permission android:name="android.permission.CHANGE_WIFI_STATE"/>
<uses-permission android:name="android.permission.ACCESS_WIFI_STATE"/>
<application
android:icon="@drawable/ic_launcher"
android:label="@string/app_name">
<activity
android:name=".SplashScreenActivity"
android:label="@string/app_name"
android:theme="@android:style/Theme.NoTitleBar"
android:screenOrientation="portrait">
<intent-filter>
<action android:name="android.intent.action.MAIN" />
<category android:name="android.intent.category.LAUNCHER" />
</intent-filter>
</activity>
</application>
Run Code Online (Sandbox Code Playgroud)
我的伙计
<menu xmlns:android="http://schemas.android.com/apk/res/android" >
<item
android:id="@+id/menu_settings"
android:showAsAction="never"
android:title=""/></menu>
Run Code Online (Sandbox Code Playgroud) 我在menu.xml文件中收到此错误.这很奇怪,因为我多次检查了我的代码.我已经尝试清理和重命名id但没有效果,并尝试构建项目但项目没有构建由于此错误可以有人帮我这个.我已经尝试了不同的问题,但没有找到答案.这里是我的代码我也尝试了这个问题中给出的解决方案但没有用: 在'android'包中找不到属性'showAsAction'的资源标识符
<?xml version="1.0" encoding="utf-8"?>
<menu xmlns:android="http://schemas.android.com/apk/res-auto">
<item
android:id="@+id/action_add_new_alarm" //error is here.
android:icon="@drawable/action_bar_add"
android:orderInCategory="100"
android:showAsAction="ifRoom" //error is here
android:title="" />
<!--<!––>-->
</menu>
Run Code Online (Sandbox Code Playgroud)
而我得到的错误就是这个
Error:(3) No resource identifier found for attribute 'id' in package 'com.xxx.xxxxx'
Error:(3) No resource identifier found for attribute 'orderInCategory' in package '
Run Code Online (Sandbox Code Playgroud)
还有一件事我正在使用android studio.
我换我Activity到AppCompatActivity现在呼吁invalidateOptionsMenu()在onOptionsItemSelected()不再更新菜单项,因为他们以前那样.onPrepareOptionsMenu()不叫.
我添加了以下依赖项
compile "com.android.support:appcompat-v7:22.2.1"
Run Code Online (Sandbox Code Playgroud)
并更新了我Activity的AppCompatActivity(注意只在第一次调用invalidateOptionsMenu()在onResume()作品中,其他两个不):
public class MyActivity extends AppCompatActivity {
private boolean isStopSaved;
// ...
@Override
protected void onResume() {
super.onResume();
if (/* Check DB if star should be set */) {
isStopSaved = true;
} else {
isStopSaved = false;
}
invalidateOptionsMenu(); // This updates the menu as expected
}
@Override
public boolean onPrepareOptionsMenu(Menu menu) {
// ...
return super.onPrepareOptionsMenu(menu); …Run Code Online (Sandbox Code Playgroud) 我在我的应用程序中使用工具栏进行材料设计.一切正常,但除了改变菜单项文字颜色,我完全坚持解决方案.我还发布了应该采取的文本的截图和我在我的应用程序中使用的代码供您参考.我尝试了几种替代方法,例如分配如下
<item name="android:actionMenuTextColor">@color/white</item>
<item name="android:textColor">#000</item>
Run Code Online (Sandbox Code Playgroud)
但是已知上述解决方案对我有用.
要求截图:
需要将SKIP菜单项从黑色更改为白色.
styles.xml
<style name="ToolBarTheme" parent="@style/Theme.AppCompat.Light">
<item name="colorPrimary">@color/blue</item>
<item name="colorPrimaryDark">@color/blue</item>
<item name="windowNoTitle">true</item>
<item name="windowActionBar">false</item>
<item name="drawerArrowStyle">@style/DrawerArrowStyle</item>
<item name="android:actionMenuTextColor">@color/white</item>
<item name="android:textColor">#000</item>
</style>
Run Code Online (Sandbox Code Playgroud)
toolbar.xml
<android.support.v7.widget.Toolbar
xmlns:android="http://schemas.android.com/apk/res/android"
xmlns:app="http://schemas.android.com/apk/res-auto"
android:id="@+id/toolbar"
android:layout_width="match_parent"
android:layout_height="?attr/actionBarSize"
app:popupTheme="@style/ThemeOverlay.AppCompat.Light"
app:layout_scrollFlags="scroll|enterAlways"
android:fitsSystemWindows="true"
android:background="?attr/colorPrimary"/>
Run Code Online (Sandbox Code Playgroud)
舱单
<activity
android:name=".activity.HomeActivity"
android:label="@string/app_name"
android:screenOrientation="portrait"
android:configChanges="keyboard|screenLayout|orientation"
android:theme="@style/ToolBarTheme"></activity>
Run Code Online (Sandbox Code Playgroud)
我真的不知道我犯了什么错误.请帮我.提前致谢
android menuitem android-menu material-design android-toolbar
我想提请像导航项目之间的线这
但我有一个像这样
我的menu.xml是
<?xml version="1.0" encoding="utf-8"?>
<menu xmlns:android="http://schemas.android.com/apk/res/android"
xmlns:app="http://schemas.android.com/apk/res-auto">
<group android:checkableBehavior="single">
<group android:checkableBehavior="single">
<item android:id="@+id/home"
android:title="Home"
android:icon="@drawable/ic_action_home_page"/></group>
<group android:checkableBehavior="single">
<item android:id="@+id/p_profile"
android:title="Payment Profile"
android:icon="@drawable/ic_action_payment_profile"/></group>
<group android:checkableBehavior="single">
<item android:id="@+id/p_history"
android:title="Payment history"
android:icon="@drawable/ic_action_payment_history"/></group>
<group android:checkableBehavior="single">
<item android:id="@+id/m_cards"
android:title="My cards"
android:icon="@drawable/ic_action_my_card"/></group>
<group android:checkableBehavior="single">
<item android:id="@+id/menu_friends"
android:title="Friends"
android:icon="@drawable/search_people"/></group>
<group android:checkableBehavior="single">
<item android:id="@+id/notification"
android:title="Notification"
android:icon="@drawable/ic_action_notification"/></group>
<group android:checkableBehavior="single">
<item android:id="@+id/about"
android:title="About"
android:icon="@drawable/ic_action_about_us"/></group>
</group>
Run Code Online (Sandbox Code Playgroud)
帮帮我们怎么解决这个问题我只想在上面提到的导航菜单之间画一条线
我不知道如何从菜单中捕获后退事件:
我的意思是我想在按button屏幕左上方的后退时捕获事件。
这是菜单的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"
android:orientation="horizontal"
android:layout_width="match_parent"
android:layout_height="match_parent"
android:theme="@style/ActionModeMenu">
<LinearLayout
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:orientation="vertical">
<CheckBox
android:id="@+id/context_menu_select_tweet_checkbox"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_marginTop="2dp"
android:onClick="onSelectAllTweet" />
<TextView
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_gravity="center_horizontal"
android:theme="@style/ActionModeMenuSubtitle"
android:text="@string/menu_tweet_select_all_text"/>
</LinearLayout>
<TextView
android:id="@+id/context_menu_select_tweet_textview"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_gravity="center_vertical"
android:paddingLeft="10dp"
android:theme="@style/ActionModeMenuTitle"/>
</LinearLayout>
Run Code Online (Sandbox Code Playgroud)
谢谢 !
我正在使用具有5个项目,4个片段和1个活动的BottomNavigationView,如下图所示
当用户点击任何片段,我希望它能够正常行动变得clicked和checked,但是当“+”项目被点击,我打开一个活动,但我不希望它是checked,所以我想这是clickable因此它可以打开活动,但我不想成为checked,因为当用户从活动中返回时,即使它是错误选择的项目,也会看到它被选中。我怎样才能做到这一点?
这是我的代码:
bottomNavigationView = findViewById(R.id.bottom_nav_view);
bottomNavigationView.setOnNavigationItemSelectedListener(this);
Run Code Online (Sandbox Code Playgroud)
。
@Override
public boolean onNavigationItemSelected(@NonNull MenuItem menuItem) {
int id = menuItem.getItemId();
Fragment fragment = null;
switch (id) {
case R.id.home_nav_menu:
fragment = new HomeFragment();
break;
case R.id.inbox_nav_menu:
fragment = new InboxFragment();
break;
case R.id.add_nav_menu:
Intent intent = new Intent(this, AddActivity.class);
startActivity(intent);
return true;
case R.id.history_nav_menu:
fragment = new HistoryFragment();
break;
case R.id.profile_nav_menu:
fragment = new ProfileFragment();
break;
}
getSupportFragmentManager().beginTransaction().replace(R.id.fragment_place_holder, fragment).commit();
return true; …Run Code Online (Sandbox Code Playgroud) android android-layout android-menu android-view bottomnavigationview
我想在BottomNavigationView的菜单项中设置特定的图像,因为当我使用drawable设置图像时,它无法正常工作。
您还可以指导我如何显示活动的臀部...吗?
这是我的代码。
selectedActivity.xml
<?xml version="1.0" encoding="utf-8"?>
<android.support.constraint.ConstraintLayout 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"
tools:context=".selectedJokesActivity">
<FrameLayout
android:id="@+id/frame"
android:layout_width="match_parent"
android:layout_height="454dp">
</FrameLayout>
<android.support.design.widget.BottomNavigationView
android:id="@+id/navigation"
android:layout_width="0dp"
android:layout_height="wrap_content"
android:layout_marginEnd="0dp"
android:layout_marginStart="0dp"
android:background="?android:attr/windowBackground"
app:layout_constraintBottom_toBottomOf="parent"
app:layout_constraintLeft_toLeftOf="parent"
app:layout_constraintRight_toRightOf="parent"
app:menu="@menu/navigation" />
</android.support.constraint.ConstraintLayout>
Run Code Online (Sandbox Code Playgroud)
selectedActivity.xml
我的活动的屏幕截图:-
menu / navigation.xml:-
<?xml version="1.0" encoding="utf-8"?>
<menu xmlns:android="http://schemas.android.com/apk/res/android"
xmlns:app="http://schemas.android.com/apk/res-auto">
<item
android:id="@+id/navigation_home"
android:icon="@drawable/digital"
android:title="@string/title_home" />
<item
android:id="@+id/navigation_dashboard"
android:icon="@drawable/ic_dashboard_black_24dp"
android:title="@string/title_dashboard" />
<item
android:id="@+id/navigation_notifications"
android:icon="@drawable/ic_notifications_black_24dp"
android:title="@string/title_notifications" />
</menu>
Run Code Online (Sandbox Code Playgroud)
请帮忙....
java android android-menu androiddesignsupport android-bottomnav