当前位置: 编程技术>移动开发
本页文章导读:
▪ProgressDialog 旋动解决 ProgressDialog 转动解决
http://www.cnblogs.com/Tammie/archive/2012/08/10/2632083.htmlAndroid笔记:实现加载的progressDialog之后跳转到程序主界面http://blog.csdn.net/mars2639/article/details/6615424反正是能转了progressDial.........
▪ ListView中getChildAt(index)的运用注意事项 ListView中getChildAt(index)的使用注意事项
1.原理在很多时候ListView列表数据不需要全部刷新,只需刷新有数据变化的那一条,这时可以用getChildAt(index)获取某个指定position的view,并对该view进行.........
▪ T61 拆机四短报警 续 T61 拆机4短报警 续
再次检查T61的键盘和触控板连接,发现将触控板摘下来时,上面的触控杆可以使用,而装上触控板的时候就不能用了。在细细看了之后,发现笔记本连接触控板的地方数据.........
[1]ProgressDialog 旋动解决
来源: 互联网 发布时间: 2014-02-18
ProgressDialog 转动解决
http://www.cnblogs.com/Tammie/archive/2012/08/10/2632083.html
Android笔记:实现加载的progressDialog之后跳转到程序主界面http://blog.csdn.net/mars2639/article/details/6615424
反正是能转了
Handler:
按照网上的说法,应该新启Thread。。。。可是启了都不行。。。还是不转
似乎是Activity跳转影响的...按理说应该把耗时的操作放在Thread中,但是发现放在Thread和放在Handler似乎没有什么区别(至少再本例中没有什么区别)。。。貌似在于sleep后,就可以转了。。。其实还是个假转。
好了可以交差了,记录备忘。
http://www.cnblogs.com/Tammie/archive/2012/08/10/2632083.html
Android笔记:实现加载的progressDialog之后跳转到程序主界面http://blog.csdn.net/mars2639/article/details/6615424
反正是能转了
progressDialog = ProgressDialog.show(this, getString(R.string.app_name),getString(R.string.tv_dialog_context2),true);
//barcode_handler.sendEmptyMessage(0);
//runOnUiThread(barcode_runnable);
//showDialog(DIALOG1_KEY);
new Thread(){
@Override
public void run(){
/*startActivity(new Intent(ChooseProductActivity.this,CaptureActivity.class));
overridePendingTransition(R.anim.slide_right_in,R.anim.slide_left_out);*/
//barcode_handler.sendEmptyMessage(0);
/*Message msg_listData = new Message();
msg_listData.what = MESSAGETYPE_01;
barcode_handler.sendMessage(msg_listData);*/
try {
sleep(2000);//关键
//Intent mIntent = new Intent();
//mIntent.setClass(ChooseProductActivity.this,CaptureActivity.class);
//startActivity(mIntent);
//overridePendingTransition(R.anim.slide_right_in,R.anim.slide_left_out);
} catch (Exception e) {
e.printStackTrace();
} finally {
barcode_handler.sendEmptyMessage(0);
}
}
}.start();Handler:
private Handler barcode_handler = new Handler(){
@Override
public void handleMessage(Message msg){
startActivity(new Intent(ChooseProductActivity.this,CaptureActivity.class));
overridePendingTransition(R.anim.slide_right_in,R.anim.slide_left_out);
progressDialog.dismiss(); //关闭进度条
}
};按照网上的说法,应该新启Thread。。。。可是启了都不行。。。还是不转
似乎是Activity跳转影响的...按理说应该把耗时的操作放在Thread中,但是发现放在Thread和放在Handler似乎没有什么区别(至少再本例中没有什么区别)。。。貌似在于sleep后,就可以转了。。。其实还是个假转。
好了可以交差了,记录备忘。
[2] ListView中getChildAt(index)的运用注意事项
来源: 互联网 发布时间: 2014-02-18
ListView中getChildAt(index)的使用注意事项
1.原理
在很多时候ListView列表数据不需要全部刷新,只需刷新有数据变化的那一条,这时可以用getChildAt(index)获取某个指定position的view,并对该view进行刷新。
注意:在ListView中,使用getChildAt(index)的取值,只能是当前可见区域(列表可滚动)的子项!
即取值范围在 >= ListView.getFirstVisiblePosition() && <= ListView.getLastVisiblePosition();
1)所以如果想获取前部的将会出现返回Null值空指针问题;
2)getChildCount跟getCount获取的值将会不一样(数量多时);
3 )如果使用了getChildAt(index).findViewById(...)设置值的话,滚动列表时值就会改变了。
需要使用getFirstVisiblePosition()获得第一个可见的位置,再用当前的position-它,再用getChildAt取值!即getChildAt(position - ListView。getFirstVisiblePosition()).findViewById(...)去设置值
2.如果想更新某一行数据,需要配合ListView的滚动状态使用,一般不滚动时才加载更新数据
//全局变量,用来记录ScrollView的滚动状态,1表示开始滚动,2表示正在滚动,0表示停止滚动
伪代码
ListView设置
public int scrollStates;
class OnScrollListenerImpl implements OnScrollListener{
@Override
public void onScrollStateChanged(AbsListView view, int scrollState) {
scrollStates = scrollState;
}
@Override
public void onScroll(AbsListView view, int firstVisibleItem,
int visibleItemCount, int totalItemCount) {
int lastInScreen = firstVisibleItem + visibleItemCount;
}
listView.setOnScrollListener(new OnScrollListenerImpl());
Activity中
if(scrollStates==OnScrollListener.SCROLL_STATE_IDLE){
更新视图数据
}
1.原理
在很多时候ListView列表数据不需要全部刷新,只需刷新有数据变化的那一条,这时可以用getChildAt(index)获取某个指定position的view,并对该view进行刷新。
注意:在ListView中,使用getChildAt(index)的取值,只能是当前可见区域(列表可滚动)的子项!
即取值范围在 >= ListView.getFirstVisiblePosition() && <= ListView.getLastVisiblePosition();
1)所以如果想获取前部的将会出现返回Null值空指针问题;
2)getChildCount跟getCount获取的值将会不一样(数量多时);
3 )如果使用了getChildAt(index).findViewById(...)设置值的话,滚动列表时值就会改变了。
需要使用getFirstVisiblePosition()获得第一个可见的位置,再用当前的position-它,再用getChildAt取值!即getChildAt(position - ListView。getFirstVisiblePosition()).findViewById(...)去设置值
2.如果想更新某一行数据,需要配合ListView的滚动状态使用,一般不滚动时才加载更新数据
//全局变量,用来记录ScrollView的滚动状态,1表示开始滚动,2表示正在滚动,0表示停止滚动
伪代码
ListView设置
public int scrollStates;
class OnScrollListenerImpl implements OnScrollListener{
@Override
public void onScrollStateChanged(AbsListView view, int scrollState) {
scrollStates = scrollState;
}
@Override
public void onScroll(AbsListView view, int firstVisibleItem,
int visibleItemCount, int totalItemCount) {
int lastInScreen = firstVisibleItem + visibleItemCount;
}
listView.setOnScrollListener(new OnScrollListenerImpl());
Activity中
if(scrollStates==OnScrollListener.SCROLL_STATE_IDLE){
更新视图数据
}
[3] T61 拆机四短报警 续
来源: 互联网 发布时间: 2014-02-18
T61 拆机4短报警 续
再次检查T61的键盘和触控板连接,发现将触控板摘下来时,上面的触控杆可以使用,而装上触控板的时候就不能用了。在细细看了之后,发现笔记本连接触控板的地方数据线已经断了。真糟糕。那么只好不装吧。
最新技术文章: