如何解决设置高度并相对于MenuItem将actionViewClass TextView垂直居中
我有以下抽屉菜单项:
<item android:title="@string/drawer_entries">
<menu>
<item
android:id="@+id/item_createEntry"
android:icon="@drawable/ic_action_new"
android:title="@string/drawer_crate_entry" />
<item
android:id="@+id/item_MyEntries"
android:icon="@drawable/ic_action_storage"
android:title="@string/drawer_my_entries"
app:actionViewClass="android.widget.TextView"
/>
</menu>
</item>
,并且我尝试将TextView小部件的背景设置为红色圆圈: (R.drawable.unsubmitted_badge)
<shape
xmlns:android="http://schemas.android.com/apk/res/android">
<stroke
android:width="1dp"
android:color="@color/black" />
<solid android:color="@color/red" />
<padding
android:left="10dp"
android:right="10dp" />
<corners android:radius="25dp" />
</shape>
我遇到的问题是,我无法找到一种方法来设置TextView的高度并使它相对于MenuItem垂直居中。默认情况下,TextView高度将填充父MenuItem。
,如果我设置TextView的高度,它将不再相对于MenuItem垂直居中。设置TextView的边距似乎没有任何效果。
MenuItem item = navigationView.getMenu().findItem(R.id.item_MyEntries);
TextView badge = (TextView) item.getActionView();
LinearLayout.LayoutParams layoutParams = new LinearLayout.LayoutParams(new ViewGroup.LayoutParams(55,55));
layoutParams.setMargins(0,20,0);
badge.setLayoutParams(layoutParams);
badge.setGravity(Gravity.CENTER_VERTICAL);
badge.setTypeface(null,Typeface.BOLD);
badge.setTextColor(ContextCompat.getColor(this,R.color.white));
badge.setText(String.valueOf(unsubmittedCount));
badge.setBackgroundResource(R.drawable.unsubmitted_badge);
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。