当前位置:  编程技术>移动开发
本页文章导读:
    ▪应用TableLayout应该注意的地方        使用TableLayout应该注意的地方 TableLayout和我们平时在网页上见到的Table有所不同,TableLayout没有边框的,它是由多个TableRow对象组成,每个TableRow可以有0个或多个单元格,每个单元格就是一.........
    ▪ 桥接ADT随意下        桥接ADT随便下 android与 eclipse 桥接ADT10.0.0 ,即时下载!     桥下载ADT10.0.0 桥下载ADT12.0.0 ......
    ▪ 应用ViewHolder模式       使用ViewHolder模式 ViewHolder不是Android的开发API,而是一种设计方法,就是设计个静态类,缓存一下,省得Listview更新的时候,还要重新操作。    public View getView(int pos, View convertView, ViewGroup .........

[1]应用TableLayout应该注意的地方
    来源: 互联网  发布时间: 2014-02-18
使用TableLayout应该注意的地方
TableLayout和我们平时在网页上见到的Table有所不同,TableLayout没有边框的,它是由多个TableRow对象组成,每个TableRow可以有0个或多个单元格,每个单元格就是一个View。这些TableRow,单元格不能设置layout_width,宽度默认是fill_parent的,只有高度layout_height可以自定义,默认是wrap_content。
     单元格可以为empty,并且通过android:layout_column可以设置index值实现跳开某些单元格。在TableRow之间,添加View,设置layout_height="1dip"以及背景色,就可以实现一条分割线。android:layout_span可以设置合并几个单元格。

android:shrinkColumns="可收缩的column"
android:stretchColumns="可伸展的column"
android:shrinkColumns和android:stretchColumns的值都是以0开始的index,但必须是string值,即用"1,2,5"来表示。可以用"*"来表示all columns。而且同一column可以同时设置为shrinkable和stretchable。
如果使用TableLayout类的setColumnShrinkable/setColumnStretchable (int columnIndex, boolean isShrinkable)就麻烦些了,需要一个一个column来设置。
也可以使用TableLayout的setShrinkAllColumns/setStretchAllColumns来设置all columns。
判断这些column是否shrinkable或stretchable,可以调用isColumnShrinkable/isColumnStretchable(int columnIndex),isShrinkAllColumns()/isStretchAllColumns()。

而动态隐藏column,可以调用setColumnCollapsed (int columnIndex, boolean isCollapsed)来指定相应的column。
另外TableLayout类的boolean isColumnCollapsed (int columnIndex)能够判断指定的column是否隐藏。

关于分割线:
我们可以通过在两个TableRow之间添加一个<View>,并设置它的layout_height="1dip"和background来解决。但这样就多产生了一个View,有点浪费。
其实还可以设置TableRow的bottomMargin=1来产生一条分割线。

为何不能动态生成TableLayout ?
是否有时候会碰到这样的情景

另一个问题:
关于TableLayout和HorizontalScrollView一起使用时的宽度问题
     我有一个TableLayout,它的内容是动态生成的。我遇到了下面的问题:
     当动态生成的一行的内容太长时,靠右边的内容会被遮住了。于是我想要这个TableLayout在横向上可以滚动。
     解决的办法是,用HorizontalScrollView包装TableLayout,这样,当内容很长时,就会出现横向滚动条。
    像这样:
<HorizontalScrollView  
 android:layout_width="fill_parent"  
 android:layout_height="fill_parent">  
  <TableLayout  
  android:id="@+id/tl_forcast_result"  
  android:layout_width="fill_parent"  
  android:layout_height="wrap_content"  
  android:padding="10dp">    
  </TableLayout>  
 </HorizontalScrollView>  

     但此时又出现了另一个问题,加上HorizontalScrollView后,虽然我已经设了TableLayout的宽度是fill_parent。但当内容较少时,TableLayout还是根据内容自适应宽度,不能满屏。
    此时,需要设置一个属性就能解决问题了。设置HorizontalScrollView的android:fillViewport="true"。也就是设置是否将HorizontalScrollView的内容宽度拉伸以适应视口(viewport)
1 楼 lenomon 2012-04-02  
有时间看看这个,希望对你有帮助 http://orgcent.com/android-vertical-horizontal-scroll-textview/

    
[2] 桥接ADT随意下
    来源: 互联网  发布时间: 2014-02-18
桥接ADT随便下

android与 eclipse 桥接ADT10.0.0 ,即时下载!

 

 

桥下载ADT10.0.0

桥下载ADT12.0.0


    
[3] 应用ViewHolder模式
    来源: 互联网  发布时间: 2014-02-18
使用ViewHolder模式
ViewHolder不是Android的开发API,而是一种设计方法,就是设计个静态类,缓存一下,省得Listview更新的时候,还要重新操作。
    public View getView(int pos, View convertView, ViewGroup parent){

            ViewHolder holder;

            if (convertView == null) {

                convertView = mInflater.inflate(R.layout.list_item, null);

                holder.text = (TextView) convertView.findViewById( R.id.text));

                holder.icon = (ImageView) convertView.findViewButId( R.id.icon));

                convertView.setTag(holder);

                }

            else {

                holder = (ViewHolder) convertView.getTag();

                }

            holder.text.setText(DATA[pos]);

            holder.icon.setImageBitmap((pos & 1) == 1 ? mIcon1 : mIcon2);

                return convertView;

//                holder = new ViewHolder();

                }



//     ViewHolder 模式, 效率提高 50%

        static class ViewHolder {

            TextView text;

            ImageView icon;

            }


    
最新技术文章:
▪Android开发之登录验证实例教程
▪Android开发之注册登录方法示例
▪Android获取手机SIM卡运营商信息的方法
▪Android实现将已发送的短信写入短信数据库的...
▪Android发送短信功能代码
▪Android根据电话号码获得联系人头像实例代码
▪Android中GPS定位的用法实例
▪Android实现退出时关闭所有Activity的方法
▪Android实现文件的分割和组装
▪Android录音应用实例教程
▪Android双击返回键退出程序的实现方法
▪Android实现侦听电池状态显示、电量及充电动...
▪Android获取当前已连接的wifi信号强度的方法
▪Android实现动态显示或隐藏密码输入框的内容
▪根据USER-AGENT判断手机类型并跳转到相应的app...
▪Android Touch事件分发过程详解
Web服务器/前端 iis7站长之家
▪Android程序设计之AIDL实例详解
▪Android显式启动与隐式启动Activity的区别介绍
▪Android按钮单击事件的四种常用写法总结
▪Android消息处理机制Looper和Handler详解
▪Android实现Back功能代码片段总结
▪Android实用的代码片段 常用代码总结
▪Android实现弹出键盘的方法
▪Android中通过view方式获取当前Activity的屏幕截...
▪Android提高之自定义Menu(TabMenu)实现方法
▪Android提高之多方向抽屉实现方法
▪Android提高之MediaPlayer播放网络音频的实现方法...
▪Android提高之MediaPlayer播放网络视频的实现方法...
▪Android提高之手游转电视游戏的模拟操控
 


站内导航:


特别声明:169IT网站部分信息来自互联网,如果侵犯您的权利,请及时告知,本站将立即删除!

©2012-2021,,E-mail:www_#163.com(请将#改为@)

浙ICP备11055608号-3