当前位置: 代码迷 >> Android >> 请问这样一个布局该如何写?多谢
  详细解决方案

请问这样一个布局该如何写?多谢

热度:45   发布时间:2016-05-01 12:36:22.0
请教这样一个布局该怎么写?谢谢
本帖最后由 itakeblue 于 2012-12-04 23:09:05 编辑
a            b              c
图片         文字及图片      图片


a和c是固定尺寸,希望a始终在屏幕最左端完整显示,c始终在屏幕最右端完整显示;

b里面文字会有长有短,b里面图片是固定尺寸;

现在希望b的宽度为屏幕总宽-(a+c)尺寸

而且当b文字比较短时,b图片贴着b文字右端显示,
b文字超出长度时,b图片完整显示,b文字缩略显示,比如 abc...

我现在用LinearLayout布局总好像不能实现呢。。请提点,谢谢。

------最佳解决方案--------------------
a
图片  作为一个整体使用LinearLayout 。 三个linearLayout都是用如下标记:
  
      <android:layout_width = "wrap_content"
       android:layout_gravity="center_horiza"(水平居中)>
 
   B 额外加上 android:layout_weight="1"(表示填充剩余布局)

  图片文字 使用android:eclippse设置省略模式。
------其他解决方案--------------------
LZ用相对布局【RelativeLayout】~可以解决问题    b文字显示的问题需在java文件中处理
------其他解决方案--------------------
楼上说的很对,你的需求都可以写成伪代码了,基本上都能实现了。
但是文字的长度和你b的长度的比较 比较难写
------其他解决方案--------------------
引用:
谢谢楼上几位。我觉得qinjuning的答案是我想要的, 

引用:a
图片  作为一个整体使用LinearLayout 。 三个linearLayout都是用如下标记:
  
      <android:layout_width = "wrap_content"
       android:layout_gravity……


图片被挤掉是省略模式的原因吧
------其他解决方案--------------------
谢谢楼上几位。我觉得qinjuning的答案是我想要的, 

引用:
a
图片  作为一个整体使用LinearLayout 。 三个linearLayout都是用如下标记:
  
      <android:layout_width = "wrap_content"
       android:layout_gravity="center_horiza"(水平居中)>
 
   B 额外加上 android:layout_w……


这个方法试了,b文字过长后,会缩略,但是b里的那张图片被挤掉不显示出来了。。
------其他解决方案--------------------
引用:
图片被挤掉是省略模式的原因吧 


那我希望b中文字省略,但是b中图片总是显示该怎么做呢。。
------其他解决方案--------------------

      < LinearLayout
        android:layout_width = "wrap_content"
        android:layout_gravity="center_horiza"(水平居中)
      >
       <ImageView 
             anddroid:src = "" (图片地址)
             android:scaleType = "center"  (图片显示类型)  />
       <TextView  (文字显示)
             android:layout_width="wrap_content"
             android:ellipsize = "end"  
     </LinearLayout>
  相关解决方案