Android 线性水平布局中一组三幅图像的权重设置
我有一个垂直的线性布局,里面有一个滚动视图 以编程方式,我在它里面添加了一些东西Android 线性水平布局中一组三幅图像的权重设置,android,android-layout,textview,android-layout-weight,Android,Android Layout,Textview,Android Layout Weight,我有一个垂直的线性布局,里面有一个滚动视图 以编程方式,我在它里面添加了一些东西 一个文本视图,没问题:我可以使用 LayoutParams params = new LinearLayout.LayoutParams ( LayoutParams.FILL_PARENT, LayoutParams.WRAP_CONTENT ); ... monthNameTextView.setLayoutParams(params); monthNameTextView.setGravity(Grav
- 一个文本视图,没问题:我可以使用
LayoutParams params = new LinearLayout.LayoutParams ( LayoutParams.FILL_PARENT, LayoutParams.WRAP_CONTENT ); ... monthNameTextView.setLayoutParams(params); monthNameTextView.setGravity(Gravity.CENTER_HORIZONTAL);
- 然后我添加一个水平线性布局。没关系
gallery = new LinearLayout(this); gallery.setOrientation(LinearLayout.HORIZONTAL); gallery.setGravity(Gravity.CENTER_HORIZONTAL); gallery.setLayoutParams(params);
- 然后我添加了3个ImageView从磁盘加载图像
Bitmap myJpg = BitmapFactory.decodeFile(imgFile.getAbsolutePath()); ImageView cover = new ImageView(this); cover.setImageBitmap(myJpg); gallery.addView(cover);
我是新来的,我试图理解布局权重和权重的区别,我在这里想问您如何通过编程设置这些参数,使三个图像简单居中,每个图像之间都有“一些”间距。更改将ImageView添加到其中的代码:
Bitmap myJpg = BitmapFactory.decodeFile(imgFile.getAbsolutePath());
ImageView cover = new ImageView(this);
cover.setImageBitmap(myJpg);
LinearLayout.LayoutParams llp = new LinearLayout.LayoutParams(LayoutParams.WRAP_CONTENT, LayoutParams.WRAP_CONTENT);
llp.setMargins(YOUR_DESIRED_SPACE_VALUE, 0, 0, 0); // 4 margin values for Top/Left/Right/Bottom
gallery.addView(cover, llp);
更改将ImageView添加到此的代码:
Bitmap myJpg = BitmapFactory.decodeFile(imgFile.getAbsolutePath());
ImageView cover = new ImageView(this);
cover.setImageBitmap(myJpg);
LinearLayout.LayoutParams llp = new LinearLayout.LayoutParams(LayoutParams.WRAP_CONTENT, LayoutParams.WRAP_CONTENT);
llp.setMargins(YOUR_DESIRED_SPACE_VALUE, 0, 0, 0); // 4 margin values for Top/Left/Right/Bottom
gallery.addView(cover, llp);
是否需要在代码中进行布局?如果要显示的图像数始终为三个,只需创建一个XML布局文件,然后动态设置图像
<LinearLayout
android:layout_width="fill_parent"
android:layout_height="fill_parent"
android:orientation="horizontal">
<ImageView
android:id="@+id/imageView1"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:src="@drawable/ic_launcher"
android:layout_margin="5dp"/>
<ImageView
android:id="@+id/imageView2"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:src="@drawable/ic_launcher"
android:layout_margin="5dp"/>
<ImageView
android:id="@+id/imageView3"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:src="@drawable/ic_launcher"
android:layout_margin="5dp"/>
</LinearLayout>
是否需要在代码中进行布局?如果要显示的图像数始终为三个,只需创建一个XML布局文件,然后动态设置图像
<LinearLayout
android:layout_width="fill_parent"
android:layout_height="fill_parent"
android:orientation="horizontal">
<ImageView
android:id="@+id/imageView1"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:src="@drawable/ic_launcher"
android:layout_margin="5dp"/>
<ImageView
android:id="@+id/imageView2"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:src="@drawable/ic_launcher"
android:layout_margin="5dp"/>
<ImageView
android:id="@+id/imageView3"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:src="@drawable/ic_launcher"
android:layout_margin="5dp"/>
</LinearLayout>
您应该考虑在视图之间的某个空间使用“空白”。“权重”是关于(线性)布局中同级视图的大小分布。您能解释一下权重和布局权重的区别吗?另外:如何以编程方式设置此属性?我尝试了magParams.setMargins(10,10,10,10);但是在这种方式中,从顶部到底部都有空间,但是没有空间,你应该考虑在视图之间的某个空间中使用“余量”。“权重”是关于(线性)布局中同级视图的大小分布。您能解释一下权重和布局权重的区别吗?另外:如何以编程方式设置此属性?我尝试了magParams.setMargins(10,10,10,10);但是通过这种方式,从顶部到底部有空间,但是图像之间没有空间
LayoutParams magParams=newlinearlayout.LayoutParams(LayoutParams.WRAP_CONTENT,LayoutParams.WRAP_CONTENT);magParams.setMargins(10,10,10,10)我刚试过这个,但这样从上到下都有空间,但并没有中间的空间images@realtebo好的,我编辑了我的答案,似乎我们应该在将ImageView添加到其父级时传递LayoutParam。Opps!我犯了一个错误。我将带边框的布局应用于线性布局,而不是应用于单个图像。当应用到图像时,一切正常,谢谢<代码>LayoutParams magParams=新建LinearLayout.LayoutParams(LayoutParams.WRAP\u内容,LayoutParams.WRAP\u内容);magParams.setMargins(10,10,10,10)我刚试过这个,但这样从上到下都有空间,但并没有中间的空间images@realtebo好的,我编辑了我的答案,似乎我们应该在将ImageView添加到其父级时传递LayoutParam。Opps!我犯了一个错误。我将带边框的布局应用于线性布局,而不是应用于单个图像。当应用到图像时,一切正常,谢谢!这是一个奇妙的方式,我不知道!如何以友好的方式设置此布局?图像每次为三个,但标题+3图像被添加“n”次。因此,从文件加载布局和简单的设置图像将是一种有趣的方式,这是一种我不知道的奇妙方式!如何以友好的方式设置此布局?图像每次为三个,但标题+3图像被添加“n”次。因此,从文件加载布局和简单设置图像将是一种有趣的方式