我正在创建将在垂直ScrollView中显示的垂直LinearLayout。我找不到在Android Studio中查看ScrollView底部下方的LinearLayout部分的方法。有什么方法可以查看完整的布局,而不是将其约束到渲染器提供的视口吗?
Answers:
就像Drew所说的那样,创建用户定义的设备定义是对我有用的唯一解决方案。下面我向您展示了要遵循的步骤:
步骤1)在预览窗格中,打开“ 虚拟设备选择”下拉菜单,然后选择“ 添加设备定义”。
步骤2)在“ 您的虚拟设备”对话框中,单击“ 创建虚拟设备”按钮。
步骤3)在“ 选择硬件”对话框中,单击“ 新建硬件配置文件”按钮。
步骤4)在该配置的硬件配置文件对话框中指定(FE)一个分辨率 720×4000像素的和分辨率汇总的12英寸。还设置分辨率汇总导致密度的xhdpi(感谢METE)。
步骤5)关闭所有对话框,然后重新启动Android Studio。步骤6)打开“ 虚拟设备选择”下拉列表。新的用户定义的硬件配置文件可在“ 通用电话和平板电脑”下找到。
我刚刚发现了。您需要在Android AVD中创建用户定义的设备定义-我创建的分辨率为480 x 4000像素。退出并重新启动Android Studio,然后可以在预览渲染器中选择此设备,并可以看到4000像素的LinearLayout。
找到了一个更简单的解决方案,在您layout
添加的内容如下所示,并根据需要进行调整:
android:layout_marginTop="-1500dp"
如果ScrollView是布局的根,则Android Studio将提供可切换的全视图。我将我放在默认的RelativeLayout之上,并且必须手动在XML中修复它,然后GUI才能提供完整视图。
<include/>
”中的技术,我们可以ScrollView
将布局中间的a 提取到单独的XML文件中,并完整查看它。
希望屏幕截图对您有所帮助:
更新:现在您可以直接在预览面板中滚动ScrollView(我在Android Studio版本2.3.2上进行了测试)
简短的答案:右键单击ScrollView并选择Refactor> Extract> Layout。
Android-studio会将您的ScrollView提取到新的布局文件中,并将tools:showIn="@layout/original_layout_file"
属性放在根布局(您的ScrollView)中。
注意:如果根布局为ScrollView,则Android-studio将预览完整布局。
另一种快速的替代解决方案是将布局临时隐藏在顶部,以便底部布局可以显示在Android Studio的可见窗口中。
放置android:visibility="gone"
要隐藏的布局。
例:
<HorizontalScrollView
android:visibility="gone"
android:id="@+id/hsv02"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:layout_alignStart="@+id/ll24"
android:layout_below="@+id/ll199">
</HorizontalScrollView>
tools:visibility="gone"
。
桌面布局
<?xml version="1.0" encoding="utf-8"?>
<TableLayout xmlns:android="http://schemas.android.com/apk/res/android"
android:orientation="vertical"
android:layout_width="match_parent"
android:layout_height="match_parent"
android:stretchColumns="1">
<TableRow android:padding="5dip">
<TextView
android:layout_height="wrap_content"
android:text="New Product Form"
android:typeface="serif"
android:layout_span="2"
android:gravity="center_horizontal"
android:textSize="20dip" />
</TableRow>
<TableRow>
<TextView
android:layout_height="wrap_content"
android:text="Product Code:"
android:layout_column="0"/>
<EditText
android:id="@+id/prod_code"
android:layout_height="wrap_content"
android:layout_column="1"/>
</TableRow>
<TableRow>
<TextView
android:layout_height="wrap_content"
android:text="Product Name:"
android:layout_column="0"/>
<EditText
android:id="@+id/prod_name"
android:layout_height="wrap_content"
android:scrollHorizontally="true" />
</TableRow>
<TableRow>
<TextView
android:layout_height="wrap_content"
android:text="Product Price:" />
<EditText
android:id="@+id/prod_price"
android:layout_height="wrap_content" />
</TableRow>
<TableRow>
<Button
android:id="@+id/add_button"
android:text="Add Product"
android:layout_height="wrap_content" />
<Button
android:id="@+id/cancel_button"
android:text="Cancel"
android:layout_height="wrap_content" />
</TableRow>
</TableLayout>
GridLAYOUT
<?xml version="1.0" encoding="utf-8"?>
<GridLayout xmlns:android="http://schemas.android.com/apk/res/android"
xmlns:tools="http://schemas.android.com/tools"
android:id="@+id/GridLayout1"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:columnCount="3"
android:rowCount="2"
tools:context=".Main3Activity" >
<Button
android:id="@+id/button3"
android:layout_column="0"
android:layout_gravity="fill_horizontal"
android:layout_row="0"
android:text="Button"
/>
<Button
android:id="@+id/button1"
android:layout_column="1"
android:layout_gravity="fill_horizontal"
android:layout_row="0"
android:text="Button" />
<Button
android:id="@+id/button2"
android:layout_column="2"
android:layout_gravity="fill_vertical"
android:layout_row="0"
android:layout_rowSpan="2"
android:text="Button" />
<Button
android:id="@+id/button4"
android:layout_column="0"
android:layout_columnSpan="2"
android:layout_gravity="fill_horizontal"
android:layout_row="1"
android:text="Button" />
</GridLayout>
ANOTHER TABLE LAYOUT
<?xml version="1.0" encoding="utf-8"?>
<android.widget.TableLayout xmlns:android="http://schemas.android.com/apk/res/android"
xmlns:app="http://schemas.android.com/apk/res-auto"
xmlns:tools="http://schemas.android.com/tools"
android:layout_width="match_parent"
android:layout_height="match_parent"
android:stretchColumns="1"
tools:context="com.example.dhanya.uitablelayout.MainActivity">
<TableRow
android:layout_width="fill_parent"
android:layout_height="fill_parent">
<TextView
android:text="Time"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_column="0" />
<TextClock
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:id="@+id/textClock"
android:layout_column="1" />
</TableRow>
<TableRow>
<TextView
android:text="First Name"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_column="0" />
<EditText
android:width="200px"
android:layout_width="wrap_content"
android:layout_height="wrap_content" />
</TableRow>
<TableRow>
<TextView
android:text="Last Name"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_column="0" />
<EditText
android:width="100px"
android:layout_width="wrap_content"
android:layout_height="wrap_content" />
</TableRow>
<TableRow
android:layout_width="fill_parent"
android:layout_height="fill_parent">
<RatingBar
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_span="2"
android:id="@+id/ratingBar"
android:layout_column="0" />
</TableRow>
<TableRow
android:layout_width="fill_parent"
android:layout_height="fill_parent"/>
<TableRow
android:layout_width="fill_parent"
android:layout_height="fill_parent">
<Button
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:text="Submit"
android:layout_span="2"
android:id="@+id/button"
android:layout_column="0" />
</TableRow>
</android.widget.TableLayout>
我发现最好的方法是将设备设置为自定义。然后,我们只需拖动即可更改布局。