ScrollView实现滑动效果

笪成周
2023-12-01

布局文件代码:

<ScrollView xmlns:android="http://schemas.android.com/apk/res/android"
    android:layout_width="match_parent"
    android:layout_height="match_parent" >
<!-- ScrollView可实现滑动效果 -->
    <LinearLayout
        android:id="@+id/ll_list"
        android:layout_width="match_parent"
        android:layout_height="match_parent"
        android:orientation="vertical" >
    </LinearLayout>

</ScrollView>

Activity代码:

import java.util.ArrayList;
import java.util.List;

import com.itheima28.sqlitedemo.dao.PersonDao;
import com.itheima28.sqlitedemo.entities.Person;

import android.os.Bundle;
import android.app.Activity;
import android.view.Menu;
import android.view.View;
import android.widget.LinearLayout;
import android.widget.TextView;
/**
 * 采用ScrollView+LinearLayout的方式实现界面滑动:
 * 这种方式的缺点:
 * 1,假如查询数据库返回的集合元素有很多,则需要多次的new对象,太费内存
 * 2,假如查询结果有数万条则,一次性把数万条结果全部显示到界面不太合理
 * @author Administrator
 *
 */
public class MainActivity extends Activity {

    @Override
    protected void onCreate(Bundle savedInstanceState) {
        super.onCreate(savedInstanceState);
        setContentView(R.layout.activity_main);
        //获取集合
        List<Person> list=new ArrayList<Person>();
        for(int i=0;i<50;i++){
        	list.add(new Person(i, "yin"+i, i+3));
        }
        //获取LinearLayout控件
        LinearLayout linearLayout = (LinearLayout) findViewById(R.id.ll_list);
        //循环list创建TextView添加到LinearLayout中
        if(list!=null&&list.size()>0){
        	for(Person p:list){
        		TextView textView=new TextView(this);
        		textView.setText(p.toString());
        		textView.setTextSize(22);//设置字体大小
        		linearLayout.addView(textView);
        	}
        }
    }
}


 类似资料: