工具栏菜单项间距问题

4

我在我的Android应用程序中有一个工具栏,其中包含自定义菜单项,如下所示:

<group android:checkableBehavior="single">
    <item
        android:id="@+id/todayIcon"
        android:title=""
        app:actionViewClass="com.anubavam.creatrix.modules.calendar.view.TodayMenuTextView"
        app:showAsAction="always" />

</group>

我正在使用以下方式自定义菜单项:

app:actionViewClass="com.anubavam.creatrix.modules.calendar.view.TodayMenuTextView

这是我的TodayMenuTextView类:

public class TodayMenuTextView extends android.support.v7.widget.AppCompatTextView {
    public TodayMenuTextView(Context context) {
        super(context);
        init();
    }

    public TodayMenuTextView(Context context, AttributeSet attrs) {
        super(context, attrs);
        init();
    }

    public TodayMenuTextView(Context context, AttributeSet attrs, int defStyleAttr) {
        super(context, attrs, defStyleAttr);
        init();
    }

    private void init() {
        setBackground(ContextCompat.getDrawable(getContext(), R.drawable.ic_go_to_today));
        setMaxLines(1);
        setFilters(new InputFilter[]{new InputFilter.LengthFilter(1)});
        setTextColor(Color.WHITE);
        setPadding(0, 10, 0, 0);
        setGravity(Gravity.CENTER);
        setTextSize(12);
        requestLayout();
    }
}

这是我的输出:

enter image description here

我的菜单项在工具栏的右侧。此外,菜单项的点击无效。

我该如何将菜单项添加到右边缘并解决点击问题?


设置所有填充为0。 - jigar savaliya
当将所有填充设置为零时,TextView中的文本(即2)会有些上移。 - Anbarasu Chinna
我在图片中没有看到任何问题。 - jigar savaliya
你只是给顶部添加了填充,而不是使用setPadding(10, 10, 10, 10)函数。 - Akash
1个回答

0

将 LayoutParams 设置为菜单项

  LayoutParams params = new LayoutParams(
    LayoutParams.WRAP_CONTENT,      
    LayoutParams.WRAP_CONTENT
   );
 params.setMargins(left, top, right, bottom);
 yourImageBiew.setLayoutParams(params);

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接