添加ScrollView时的Android Studio渲染

时间:2015-10-19 16:08:20

标签: android android-layout android-studio

我正在使用Android Studio 1.3.2。所以,我正在做一个测试应用程序,我有一个LinearLayout组。布局预览如下:http://imgur.com/EkPv1v2

接下来,我在LinearLayout组上方添加了一个ScrollView组。然后预览仅显示:http://imgur.com/ccb2IFu

操作栏消失了。手机的框架消失了。

但是,如果我将ScrollView组放在主LinearLayour组之后,那么渲染就可以了。

发生了什么?我错过了什么吗?

以下是使用ScrollView的XML布局:

<ScrollView xmlns:android="http://schemas.android.com/apk/res/android"
xmlns:tools="http://schemas.android.com/tools"
android:layout_width="match_parent"
android:layout_height="match_parent"
tools:context=".MainActivity">

<LinearLayout
    android:layout_width="match_parent"
    android:layout_height="match_parent"
    android:orientation="vertical"
    android:paddingBottom="@dimen/activity_vertical_margin"
    android:paddingLeft="@dimen/activity_horizontal_margin"
    android:paddingRight="@dimen/activity_horizontal_margin"
    android:paddingTop="@dimen/activity_vertical_margin"
    tools:context=".MainActivity">

    <TextView
        android:layout_width="wrap_content"
        android:layout_height="wrap_content"
        android:layout_marginBottom="16dp"
        android:text="Toppijjngs"
        android:textAllCaps="true" />

    <CheckBox
        android:id="@+id/notify_me_checkbox"
        android:layout_width="wrap_content"
        android:layout_height="wrap_content"
        android:layout_marginBottom="16dp"
        android:onClick="hasTopping"
        android:paddingLeft="24dp"
        android:text="Whipped Cream"
        android:textSize="16sp" />

    <TextView
        android:layout_width="wrap_content"
        android:layout_height="wrap_content"
        android:layout_marginBottom="16dp"
        android:text="quantity"
        android:textAllCaps="true" />

    <LinearLayout
        android:layout_width="wrap_content"
        android:layout_height="wrap_content"
        android:orientation="horizontal">

        <Button
            android:layout_width="48dp"
            android:layout_height="48dp"
            android:onClick="decrement"
            android:text="-" />

        <TextView
            android:id="@+id/quantity_text_view"
            android:layout_width="wrap_content"
            android:layout_height="wrap_content"
            android:layout_marginLeft="8dp"
            android:layout_marginRight="8dp"
            android:text="0"
            android:textColor="#000000" />

        <Button
            android:layout_width="48dp"
            android:layout_height="48dp"
            android:onClick="increment"
            android:text="+" />

    </LinearLayout>

    <TextView
        android:layout_width="wrap_content"
        android:layout_height="wrap_content"
        android:layout_marginTop="16dp"
        android:text="order summary"
        android:textAllCaps="true" />

    <TextView
        android:id="@+id/order_summary_text_view"
        android:layout_width="wrap_content"
        android:layout_height="wrap_content"
        android:layout_marginTop="16dp"
        android:text="$0.00"
        android:textColor="#000000" />

    <Button
        android:layout_width="wrap_content"
        android:layout_height="wrap_content"
        android:layout_marginTop="16dp"
        android:onClick="submitOrder"
        android:text="order" />

</LinearLayout>

1 个答案:

答案 0 :(得分:2)

由于ScrollView的性质,Android Studio隐藏了电话框和操作栏,因此您可以看到完整视图,因此如果您的ScrollView大于手机屏幕,则预览会显示整个ScrollView。

如果要在预览窗口中暂时查看电话框,可以执行以下操作:

  1. 在“渲染配置”按钮中,选择“预览代表示例”选项。
  2. Select the "Preview Representative Sample" option

    1. 在同一个按钮中,现在选择“无”选项。
    2. Select "None"

      1. 将显示电话框(不带操作栏)
      2. Phone frame appears

        但是,一旦切换到另一个文件,或者切换到设计模式,然后回到文本模式,手机框架就会消失。

        您可以在设计模式下的手机框和操作栏中看到ScrollView,按下“切换视口渲染模式”按钮:

        Press Toggle Viewport Render Mode

        但如果ScrollView大于手机屏幕,您将看不到所有内容。

        这就是全部!

        Ready