gpt4 book ai didi

android - 将Textview设置在Action Bar的极右角和中间

转载 作者:行者123 更新时间:2023-11-30 03:30:56 32 4
gpt4 key购买 nike

我已经实现了 Sherlock Actionbar,目前有一个动态变化的 TextView 。我想设置 3 个 TextView 最右角和中间,最后一个在最左边。我怎样才能实现这个? textview gravity 和 layout gravity 都不起作用。他们有什么方法可以实现这个吗?我的 TextView 代码现在显示在操作栏的最左角。

    mActionBar = getSupportActionBar();
mActionBar.setDisplayShowHomeEnabled(false);
mActionBar.setDisplayShowTitleEnabled(false);

mInflater = LayoutInflater.from(this);
mCustomView = mInflater.inflate(R.layout.actiontext, null);
mTitleTextView = (TextView) mCustomView.findViewById(R.id.menutesttext);

mActionBar.setCustomView(mCustomView);
mActionBar.setDisplayShowCustomEnabled(true);

我的 TextView 的 xml 文件是

    <?xml version="1.0" encoding="utf-8"?>
<FrameLayout xmlns:android="http://schemas.android.com/apk/res/android"
android:id="@+id/expand_activities_button"
android:layout_width="wrap_content"
android:layout_height="match_parent"
android:layout_gravity="center"
android:clickable="false"
android:focusable="true"
android:addStatesFromChildren="true">

<TextView android:id="@+id/menutesttext"
android:layout_width="82dp"
android:layout_height="20dp"
android:layout_gravity="center"
android:gravity="center"
android:text="Testing"/>
</FrameLayout>

现在我想要的是在此框架布局中设置另外 2 个 TextView ,并使其在我的操作栏中可调整,例如,

TEXTVIEW1       TEXTVIEW2       TEXTVIEW3

我不想实现Tab View ,只想用上面的方式实现3个textview。

最佳答案

这是您应该对 FrameLayout 执行的操作:

<?xml version="1.0" encoding="utf-8"?>
<FrameLayout xmlns:android="http://schemas.android.com/apk/res/android"
android:id="@+id/expand_activities_button"
android:layout_width="match_parent"
android:layout_height="match_parent"
android:layout_gravity="center"
android:clickable="false"
android:focusable="true"
android:addStatesFromChildren="true">

<TextView android:id="@+id/menutesttextcenter"
android:layout_width="82dp"
android:layout_height="20dp"
android:layout_gravity="center_horizontal"
android:gravity="center_horizontal"
android:text="Testing"/>

<TextView android:id="@+id/menutesttextright"
android:layout_width="82dp"
android:layout_height="20dp"
android:layout_gravity="right"
android:gravity="right"
android:text="Testing"/>

<TextView android:id="@+id/menutesttextleft"
android:layout_width="82dp"
android:layout_height="20dp"
android:layout_gravity="left"
android:gravity="left"
android:text="Testing"/>

</FrameLayout>

或者,您可以使用下面的 LinearLayout 轻松实现此目的。

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

<TextView
android:id="@+id/textViewLeft"
android:layout_width="wrap_content"
android:gravity="left"
android:layout_weight="1"
android:layout_height="wrap_content"
android:text="TextView" />

<TextView
android:id="@+id/textViewCenter"
android:layout_width="wrap_content"
android:layout_weight="1"
android:gravity="center"
android:layout_height="wrap_content"
android:text="TextView" />

<TextView
android:id="@+id/textViewRight"
android:layout_width="wrap_content"
android:layout_weight="1"
android:gravity="right"
android:layout_height="wrap_content"
android:text="TextView" />

</LinearLayout>

关于android - 将Textview设置在Action Bar的极右角和中间,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/17488197/

32 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com