【问题标题】:Align Center Menu Item text in android在android中对齐中心菜单项文本
【发布时间】:2013-10-13 10:46:21
【问题描述】:

使用以下代码

<item 
    android:id="@+id/text"
    android:title="@string/mainMenu"
    android:enabled="false"
    android:layout_gravity="center">
</item>

我有一个样式定义为

<style name="MenuTextStyle" parent="@android:style/TextAppearance.Medium">
    <item name="android:textColor">6F6B6B</item>
    <item name="android:gravity">center_horizontal</item>
    <item name="android:textStyle">bold</item>
    <item name="android:textSize">14sp</item>

但菜单文本仍然不在中间。如何让它居中?

【问题讨论】:

    标签: java android eclipse


    【解决方案1】:

    您可以在 Activity 中使用 SpannableString 动态居中对齐菜单项:

    int positionOfMenuItem = 0; //or any other postion
    MenuItem item = menu.getItem(positionOfMenuItem);
    SpannableString s = new SpannableString(settingsItemTitle);
    
    s.setSpan(new AlignmentSpan.Standard(Alignment.ALIGN_CENTER), 0, s.length(), 0);
    
    item.setTitle(s);
    

    【讨论】:

    • 注意:这只是水平居中
    • @ParthPatel 在你的 onCreate 中。
    【解决方案2】:

    我使用了@Mahm00d 的方法,效果很好,但我找到了另一种解决问题的方法。就是在String前面加上\t。如果空间不够,我可以添加更多。

    因为中文单词是一一对应的,所以item的长度是一样的。

    【讨论】:

      【解决方案3】:

      另一种方法是通过设置主题

       <android.support.design.widget.NavigationView
          android:id="@+id/nav_view"
          android:layout_width="wrap_content"
          android:layout_height="match_parent"
          android:layout_gravity="start"
          android:fitsSystemWindows="true"
          android:theme="@style/ThemeToolbar.NavigationViewPadding"
          app:itemTextColor="@color/inverse_color"
          app:itemIconTint="@color/inverse_color"
          app:itemBackground="@drawable/selector_navigation"
          app:headerLayout="@layout/activity_home_nav_header"
          app:menu="@menu/activity_home_drawer" />
      

      按照你的风格

          <style name="ThemeToolbar.NavigationViewPadding">
          <item name="listPreferredItemPaddingLeft">50dp</item>
          </style>
      

      【讨论】:

        猜你喜欢
        • 1970-01-01
        • 2015-08-23
        • 1970-01-01
        • 2018-07-07
        • 2011-11-11
        • 1970-01-01
        • 2013-07-08
        • 1970-01-01
        • 1970-01-01
        相关资源
        最近更新 更多