Articles of android linearlayout

使用单个TableLayout而不是多个LinearLayouts作为TableRow的优势仅在于扩展了LinearLayout

我的列表查看项目由三列和三行组成。我使用了TableLayout。列之间的空间不统一,但是我通过设置页边空间来pipe理。现在布局看起来很完美。 <TableLayout xmlns:android="http://schemas.android.com/apk/res/android" android:layout_width="match_parent" android:layout_height="wrap_content" android:paddingBottom="@dimen/dp18" android:paddingLeft="@dimen/dp16" android:paddingTop="@dimen/dp18" android:stretchColumns="0,1,2"> <TableRow> .. </TableRow> <TableRow> .. </TableRow> <TableRow> .. </TableRow> </TableLayout> 但是我想知道什么是理想的方法? 如果我已经使用了四个LinearLayout(一个外部水平线性布局和三个内部垂直线性布局),那么在优化和性能方面将会有什么不同? 由于TableRowinheritance了LinearLayout,所以我间接使用了LinearLayout。 那么, 使用单个TableLayout而不是多个LinearLayout的优点是什么,TableRow只能扩展LinearLayout?

如何将LinearLayout转换为图像?

我尝试了下面的代码将LinearLayout转换为图像: public void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); setContentView(R.layout.main); LinearLayout lyt = (LinearLayout) findViewById(R.id.lyt); lyt.setDrawingCacheEnabled(true); lyt.buildDrawingCache(true); Bitmap b = Bitmap.createBitmap(lyt.getDrawingCache()); ImageView img = (ImageView) findViewById(R.id.imageView1); img.setImageBitmap(b); } 但我得到了NullPointerException : Bitmap b = Bitmap.createBitmap(lyt.getDrawingCache()); 布局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" android:orientation="vertical" > <LinearLayout android:id="@+id/lyt" android:layout_width="match_parent" android:layout_height="wrap_content" android:orientation="vertical" > <Button android:id="@+id/button1" android:layout_width="wrap_content" android:layout_height="wrap_content" android:text="Button 1" /> […]

Android线性/相对布局 – 如何“自动调整”中间的对象(3个对象)

我有两种情况与线性(也尝试过相对)在Android的布局。 一个是水平的,另一个是垂直的。 让我们从水平开始吧: 它是这样的: <LinearLayout … > <Button … layout:gravity = "left" layout:width = "wrap_content"/> <TextView … layout:width = ??????? /> <Image …. layout:gravity = "right" layout:width = "wrap_content"/> </LinearLayout> 那么,我想要button留在左边,图像留在右边(坚持到最后,不只是正确的文本视图)和textview(可能与一个autowidth或其他)留在中间。 如果我把textview的宽度设置为“fill / match_parent”,它会把图像从屏幕上传出来,如果我把wrap_content放到屏幕的右边,那么图像也不会停留在屏幕的右边。 同样的案例在垂直,我有这样的事情: <LinearLayout …> <LinearLayout …. layout:height = "wrap_content" layout:gravity= "top" /> <ListView layout:height = ???????> <LinearLayout … layout:height = "wrap_content" layout:gravity […]

使用ObjectAnimatoranimationweightSum属性

介绍: 我有一个LinearLayout,它包含两个子LinearLayouts,如下所示: <LinearLayout xmlns:android="http://schemas.android.com/apk/res/android" android:id="@+id/dual_pane" android:layout_width="fill_parent" android:layout_height="fill_parent" android:orientation="horizontal" android:weightSum="1.0"> <!– Screen 1 –> <LinearLayout android:layout_width="0dp" android:layout_height="match_parent" android:background="#ff0000" android:layout_weight="1"> </LinearLayout> <!– Screen 2 –> <LinearLayout android:layout_width="0dp" android:layout_height="match_parent" android:background="#ff6600" android:layout_weight="1"> </LinearLayout> </LinearLayout> 最初,我想要“屏幕1”采取所有可用的屏幕宽度。 因此,我的R.id.dual_pane的weightSum属性为1.0。 这工作正常! 如果weightSum = 1.0,屏幕1占据整个屏幕! 加载一些资源之后,我将R.id.dual_pane的weightSum更改为2.0,这导致屏幕1和屏幕2的屏幕宽度都减半。 这也是完美的。 当weightSum = 2.0时,两个屏幕都占用50%的宽度。 问题: 我想animation的weightSum属性,所以我的Screen2将滑入英寸我瞄准HoneyComb,所以minSDK版本是11,我想,使用新的ObjectAnimator框架,我可以很容易地animation这个属性,以得到一个很好的光滑效果。 我validation了LinearLayout确实有getWeightSum()和setWeightSum()方法(我认为这是使用ObjectAnimator所必需的)。 自己的努力: 这是我使用ObjectAnimator显示和隐藏Screen2的代码: private void showScreen2() { //Not-animated will work… //mDualPane.setWeightSum(2.0f); // […]

LinearLayout里面的RelativeLayout?

我想知道我在做什么错了,为什么在RelativeLayout中包含这些button会导致错误? 我还没有编辑太多的布局,难道我不能像这样贴上相对或线性的布局吗? 如果我不把布局中的button包围在一起,那么我只是尝试将它们水平放置在一起。 我认为我做这个整个布局的方式是不好的,因为它的垂直方向看起来相当挤压。 <?xml version="1.0" encoding="utf-8"?> <LinearLayout xmlns:android="http://schemas.android.com/apk/res/android" android:id="@+id/MainLayout" android:layout_width="fill_parent" android:layout_height="fill_parent" android:orientation="vertical" > <LinearLayout android:id="@+id/topButtons" android:layout_margin="4dip" android:orientation="horizontal" android:layout_width="fill_parent" android:layout_height="wrap_content"> <Button android:id="@+id/deviceConnect" android:layout_margin="8dip" android:layout_weight="3" android:layout_width="fill_parent" android:layout_height="match_parent" android:text="Connect2"/> <LinearLayout android:orientation="vertical" android:layout_weight="1" android:layout_width="fill_parent" android:layout_height="wrap_content"> <LinearLayout android:orientation="horizontal" android:layout_margin="8dip" android:layout_width="wrap_content" android:layout_height="wrap_content"> <TextView android:text="Connected Adapter:" android:layout_gravity="center_vertical" android:layout_width="wrap_content" android:layout_height="wrap_content"/> <Spinner android:id="@+id/deviceSpinner" android:layout_width="wrap_content" android:layout_height="wrap_content" android:drawSelectorOnTop="true"/> <TextView android:id="@+id/currentSettings" android:layout_marginLeft="8dip" android:text="Current Settings: Not Connected" […]

dynamic地添加一个孩子到LinearLayout获取每个孩子的位置

我有一个问题,得到LinearLayout的孩子的位置。 首先,我dynamic添加一些button,然后我试图返回每个孩子的索引,并将其显示到一个TextView中 。 我在这里分享代码: java源码 : private String[] categories; private LinearLayout ll; private TextView tv; public void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); setContentView(R.layout.main); categories = getResources().getStringArray(R.array.categories); tv = (TextView) findViewById(R.id.text); ll = (LinearLayout) findViewById(R.id.hsvLinearLayout); for(int i = 0; i < categories.length; i++) { Button btn = new Button(this); btn.setText(categories[i]); btn.setOnClickListener(buttonClick); ll.addView(btn); } } OnClickListener buttonClick = […]

android – 如何去除线性布局的视图

在我的应用程序中,我将视图dynamic添加到线性布局。 每个视图由一个button组成,如果你点击那个视图将被删除。 如何刷新线性布局? 因为当我删除任何视图时,视图的位置将被改变。

如何添加视图到线性布局?

可以向上向上添加视图到线性布局。 如果有人在那工作,请帮助我

LinearLayout方形

在LinearLayout中有一个LinearLayout是可以dynamic调整高度和宽度的吗? 我不想指定值,只是高度是可能的宽度相同的大小。 谢谢

Android的LinearLayout填充宽度

我想知道为什么发生这种情况: <LinearLayout xmlns:android="http://schemas.android.com/apk/res/android" android:orientation="horizontal" android:layout_width="fill_parent" android:gravity="center_vertical" android:layout_height="wrap_content" android:layout_gravity="top" android:background="@drawable/gradient" android:focusable="true" android:paddingTop="5dip" android:paddingBottom="5dip" android:focusableInTouchMode="true"> <EditText android:id="@+id/searchField" android:layout_width="wrap_content" android:layout_height="fill_parent" android:paddingTop="2dip" android:paddingBottom="2dip" android:paddingLeft="10dip" android:paddingRight="10dip" android:inputType="textVisiblePassword" android:radius="5dip" android:layout_marginLeft="10dip" android:background="@drawable/search_background" android:textColor="#000000" /> <Button android:id="@+id/info" android:layout_width="wrap_content" android:layout_height="wrap_content" android:layout_marginLeft="10dip" android:background="@drawable/info_btn" /> </LinearLayout> 如果我将“fill_parent”设置为我的EditText的layout_width,它将占用父项的整个宽度,button消失(我想它隐藏在EditText的下面)。 有人可以解释我吗? 我想要得到的Button自己的宽度和EditText需要剩余的宽度。