初始状态截图(全屏幕,没截状态栏):
加了TranslateAnimation运行后的效果(listview底部移动上去了):
代码如下:
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.text);
listview = (ListView) findViewById(R.id.listview1);
this.setData();
SimpleAdapter adapter = new SimpleAdapter(this, data, R.layout.item,
new String[] { "textview" }, new int[] { R.id.textview1 });
listview.setAdapter(adapter);
new Async().execute();
}
class Async extends AsyncTask<Void, Integer, Void> {
@Override
protected Void doInBackground(Void... params) {
try {
Thread.sleep(5000);
} catch (InterruptedException e) {
e.printStackTrace();
}
this.publishProgress(0);
return null;
}
@Override
protected void onProgressUpdate(Integer... values) {
anim();//5秒后执行动画
super.onProgressUpdate(values);
}
}
private void anim() {
TranslateAnimation anim = new TranslateAnimation(0, 0, 0, -100);
anim.setDuration(5000);
anim.setInterpolator(new LinearInterpolator());
anim.setFillAfter(true);
listview.startAnimation(anim);
}
在动画移动的时候,listview的底部就慢慢向上移动,这个是啥问题啊?
谢谢各位了!
学习。。。
你在这里设置了动画的持续时间
anim.setDuration(5000);
把这个时间改短点看看
呵呵,改短点也一样的
你现在是滚动的是Listview,其实你想滚动listview中的内容。所以listview后面的背景就会出来了。
对啊, 请问怎么实现呢,谢谢
@我说_小莫: 不知道你是不是写的wpf,ListView设置它的长度方向 VerticalAlignment="Stretch"
或者把背景设置成listview一样的颜色。或者ListView外面套个ScrollViewer。你试试
@Lee's Blog: ...不好意思,没说清楚,是android! 没有那个属性
@我说_小莫: android我不清楚 你可以试试ListView外面套个ScrollViewer。scrollviewer固定
试试这个:
这是设置阴影消失的