将 TextView 左对齐和居中对齐

Posted

技术标签:

【中文标题】将 TextView 左对齐和居中对齐【英文标题】:Align TextView on left and center 【发布时间】:2018-05-21 21:15:56 【问题描述】:

我该如何实现呢?我尝试弄乱 android:layout_gravity center|left 和 android:gravity center|left ,但似乎都没有。我使用可跨行字符串有什么不同吗?

Here is what I have right now and what I want to achive. I want my Text to align to the red line

提前致谢。

My Layout.. 是 ID 状态的 TextView

<android.support.v4.widget.DrawerLayout
    android:id="@+id/drawer_layout"
    android:layout_
    android:layout_
    >


    <!-- Main layout -->

    <TextView
        android:id="@+id/textView"
        android:layout_
        android:layout_
        />

    <FrameLayout
        android:id="@+id/main_fragment_container"
        android:layout_
        android:layout_
        android:background="#f2f2f2">



            <LinearLayout
                android:layout_
                android:layout_
                android:layout_gravity="center_horizontal"

                >


                <android.support.v4.widget.SwipeRefreshLayout
                    android:id="@+id/swiperefresh"
                    android:layout_
                    android:layout_

                    >


                    <LinearLayout
                        android:layout_
                        android:layout_
                        android:layout_gravity="center"
                        android:orientation="vertical"><![CDATA[
                        >

                        ]]>

                        <include
                            layout="@layout/actionbarmenu"
                            android:layout_
                            android:layout_
                            android:layout_weight="0.64" />

                        <TextView
                            android:id="@+id/textView3"
                            android:layout_
                            android:layout_
                            android:layout_marginLeft="5dp"
                            android:background="#FAFAFA"
                            android:gravity="center|left"
                            android:text="Notfallübersicht"
                            android:textColor="#c9c9c9"
                            android:textSize="18sp" />

                        <EditText
                            android:id="@+id/Notfall"
                            android:layout_
                            android:layout_
                            android:layout_weight="0.36"
                            android:background="@drawable/round_grey"
                            android:ellipsize="end"
                            android:gravity="center"
                            android:hint="Notfall-Code Eingabe"
                            android:inputType="text"
                            android:paddingLeft="6dp"
                            android:singleLine="true"
                            android:textAllCaps="false"
                            android:textColor="#585858"
                            android:textColorHint="#c9c9c9"
                            android:textCursorDrawable="@drawable/black_cursor" />

                        <TextView
                            android:id="@+id/textView7"
                            android:layout_
                            android:layout_
                            android:layout_weight="0.70" />

                        <TextView
                            android:id="@+id/status"
                            android:layout_
                            android:layout_
                            android:layout_weight="3.63"
                            android:gravity="center"
                            android:textColor="#6f7070"
                            android:textSize="20sp"
                            android:visibility="visible" />

                        <TextView
                            android:id="@+id/abgemeldet"
                            android:layout_
                            android:layout_
                            android:layout_weight="10.08"
                            android:text="Bitte melde dich mit deinen Pengueen Log-In Daten an, um die App zu aktivieren.  "
                            android:textSize="24sp" />

                        <TextView
                            android:id="@+id/user"
                            android:layout_
                            android:layout_
                            android:layout_marginLeft="5dp"
                            android:layout_weight="0.60"
                            android:text="Angemeldet als :"
                            android:textSize="14sp"
                            android:visibility="invisible" />

                        <TextView
                            android:id="@+id/angemeldet"
                            android:layout_
                            android:layout_
                            android:layout_marginLeft="5dp"
                            android:layout_weight="1.09"
                            android:text="Letzte Abfrage vor  1 Minute"
                            android:textSize="14sp"
                            android:textStyle="bold"
                            android:visibility="invisible" />

                        <Button
                            android:id="@+id/button"
                            style="@style/Widget.AppCompat.Button"
                            android:layout_
                            android:layout_
                            android:background="#4697c4"
                            android:text="Anmleden"
                            android:textColor="#ffffff"
                            android:visibility="gone" />

                        <RelativeLayout
                            android:layout_
                            android:layout_
                            android:layout_weight="0.74">

                            <!-- This could be your fragment container, or something -->
                            <FrameLayout
                                android:id="@+id/contentContainer"
                                android:layout_
                                android:layout_
                                android:layout_above="@+id/bottomBar" />

                            <com.roughike.bottombar.BottomBar
                                android:id="@+id/bottomBar"
                                android:layout_
                                android:layout_
                                android:layout_alignParentBottom="true"
                                android:layout_gravity="bottom"
                                app2:bb_activeTabAlpha="1"
                                app2:bb_activeTabColor="#ffffff"
                                app2:bb_inActiveTabAlpha="0.6"
                                app2:bb_inActiveTabColor="#ffffff"
                                app2:bb_tabXmlResource="@xml/bottombar_tabs" />

                        </RelativeLayout>


                    </LinearLayout>
                </android.support.v4.widget.SwipeRefreshLayout>
            </LinearLayout>

    </FrameLayout>

    <!-- The navigation drawer -->

    <ListView
        android:id="@+id/left_drawer"
        android:layout_
        android:layout_
        android:layout_gravity="start"
        android:background="#51aadd"
        android:choiceMode="singleChoice"
        android:divider="@drawable/list_divider"
        android:footerDividersEnabled="false"
        android:headerDividersEnabled="true"
        android:scrollbars="none" />



</android.support.v4.widget.DrawerLayout>

【问题讨论】:

发布您的 xml 代码 DrawerLayout 中,您只需要一个不是抽屉的View。任何非抽屉View 都被拉伸以填充DrawerLayout,并且其layout_gravity 值被忽略。 【参考方案1】: android:gravity 设置 View 内容的重力。 android:layout_gravity 设置 View 相对于其父级的重力。

你可以看到Difference between gravity and layout_gravity on Android

android:TextView的gravity默认值是left,这是你想要的,你只需要改变layout_gravity。

设置TextView android:layout_gravity="center_horizo​​ntal"时,应该设置android:layout_,而不是'match_parent'。

android:layout_
android:layout_gravity="center_horizontal"

【讨论】:

【参考方案2】:

您将需要在所需的文本视图中使用它:

android:layout_
android:gravity="left"
android:layout_gravity="center_horizontal"

【讨论】:

现在整个文本左对齐但不居中

以上是关于将 TextView 左对齐和居中对齐的主要内容,如果未能解决你的问题,请参考以下文章

使 android-textview 的某个部分向右对齐

使用 flexbox 左对齐和居中对齐元素

如何使文本在 Android TextView 向右对齐

html中怎么将标签左对齐,而文本框右对齐的方法

CSS:如何将列表元素与左对齐文本居中对齐?

CSS:如何将列表元素与左对齐文本居中对齐?