android - 在框架的特定区域设置textview

标签 android textview scrollview

我有一个消息程序,可以将消息添加到 ScrollView 内的 TextView 中。

我有一个用于显示消息的框架。我的问题是 TextView 的文本出现在框架上而不是框架的特定区域内,他们有什么方法可以做到这一点。

我的 xml 代码是:

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

    <LinearLayout
        android:layout_width="fill_parent"
        android:layout_height="fill_parent"
        android:background="@drawable/background_all"
        android:orientation="vertical"
        android:weightSum="100" >

        <LinearLayout
            android:layout_width="fill_parent"
            android:layout_height="0dp"
            android:layout_gravity="center"
            android:layout_weight="15"
            android:gravity="center"
            android:orientation="vertical" >

            <ImageView
                android:id="@+id/imageview"
                android:layout_width="fill_parent"
                android:layout_height="0dp"
                android:layout_weight="15" />
        </LinearLayout>

        <LinearLayout
            android:layout_width="fill_parent"
            android:layout_height="0dp"
            android:layout_weight="70"
            android:background="@drawable/love_sms_frame"
            android:orientation="vertical"
            android:weightSum="100" >

            <ScrollView
                android:id="@+id/ScrollView01"
                android:layout_width="wrap_content"
                android:layout_height="0dp"
                android:layout_weight="100"
                android:scrollbarAlwaysDrawVerticalTrack="true" >

                <TextView
                    android:id="@+id/txtDetails"
                    android:layout_width="fill_parent"
                    android:layout_height="wrap_content"
                    android:text="Lorem ipsum dolor sit amet, consectetur adipiscing elit. In auctor varius ligula quis imperdiet. Cras at arcu eget ligula lacinia aliquam. Donec ultricies neque eu nisl elementum sed luctus leo porta. Nunc gravida molestie sodales. Nam sit amet lacus a odio dictum dignissim. Pellentesque nec tincidunt urna." />
            </ScrollView>

        </LinearLayout>

        <LinearLayout
            android:layout_width="fill_parent"
            android:layout_height="0dp"
            android:layout_weight="15"
            android:orientation="horizontal"
            android:weightSum="3" >

            <LinearLayout
                android:layout_width="match_parent"
                android:layout_height="match_parent"
                android:layout_weight="1"
                android:gravity="center"
                android:orientation="horizontal" >

                <ImageButton
                    android:id="@+id/ibPrev"
                    android:layout_width="70dp"
                    android:layout_height="70dp"
                    android:background="@drawable/love_sticker_previous_button"
                    android:gravity="center_vertical" />
            </LinearLayout>

            <LinearLayout
                android:layout_width="match_parent"
                android:layout_height="match_parent"
                android:layout_weight="1"
                android:gravity="center"
                android:orientation="horizontal" >

                <ImageButton
                    android:id="@+id/ibShare"
                    android:layout_width="70dp"
                    android:layout_height="70dp"
                    android:layout_gravity="center_vertical"
                    android:background="@drawable/love_sticker_share_button" />
            </LinearLayout>

            <LinearLayout
                android:layout_width="match_parent"
                android:layout_height="match_parent"
                android:layout_weight="1"
                android:gravity="center"
                android:orientation="horizontal" >

                <ImageButton
                    android:id="@+id/ibNext"
                    android:layout_width="70dp"
                    android:layout_height="70dp"
                    android:background="@drawable/love_sticker_next_button"
                    android:gravity="center_vertical" />
            </LinearLayout>
        </LinearLayout>
    </LinearLayout>

</LinearLayout>

屏幕截图:

enter image description here

请帮我解决这个问题。 任何帮助,将不胜感激。 谢谢。

最佳答案

第 1 步:根据屏幕尺寸添加填充值(例如):

  • res/values/dimens.xml

    25dp

  • res/values-large/dimens.xml

    35dp

  • res/values-xlarge/dimens.xml

    50dp

.....

第 2 步:为您的 TextView 添加内边距:

<TextView
         android:id="@+id/txtDetails"
         android:layout_width="fill_parent"
         android:layout_height="wrap_content"
         android:text="Lorem ipsum dolor sit amet, consectetur adipiscing elit. In auctor varius ligula quis imperdiet. Cras at arcu eget ligula lacinia aliquam. Donec ultricies neque eu nisl elementum sed luctus leo porta. Nunc gravida molestie sodales. Nam sit amet lacus a odio dictum dignissim. Pellentesque nec tincidunt urna."
         android:padding="@dimen/sms_padding" />

关于android - 在框架的特定区域设置textview,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/28192107/

相关文章:

java - 如何在 EditText 中只允许正数

java - 在一个类中设置多个对话框并在其中一个对话框上设置 TextView

android - 自定义警报对话框滚动问题

iphone - UIScrollView 与 UIRotationGestureRecognizer 的缩放问题

react-native - 如何在 FlatList 上向上滚动时显示标题并在向下滚动时隐藏标题

android - 无法生成签名的APK。重复的条目:DragAndDropPermissionsCompat.class

java - sqlite 日期时间格式 : which one is better?

Android:为以编程方式创建的 TextView 设置文本颜色

android - 设置不同大小的 TextView 的文本

Android Ionic Cordova - 错误 : Failed to get absolute path to installed module