08-24 CheckBox、ImageView、ArrayAdapter、SimpleAdapter、自定義Adapter

CheckBox

//**layout_checkbox.xml**
<?xml version="1.0" encoding="utf-8"?>
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
    android:orientation="vertical"
    android:layout_width="match_parent"
    android:layout_height="match_parent"
    android:layout_margin="10dp">

    <TextView
        android:id="@+id/textview_hobby"
        android:layout_width="wrap_content"
        android:layout_height="wrap_content"
        android:text="愛好"/>
    <LinearLayout
        android:layout_width="wrap_content"
        android:layout_height="wrap_content"
        android:orientation="horizontal">

        <CheckBox
            android:id="@+id/checkbox_read"
            android:layout_width="wrap_content"
            android:layout_height="wrap_content"
            android:button="@drawable/checkbox"
            android:text="讀書"/>
        <CheckBox
            android:id="@+id/chockbox_travel"
            android:layout_width="wrap_content"
            android:layout_height="wrap_content"
            android:button="@drawable/checkbox"
            android:text="旅遊"/>
        <CheckBox
            android:id="@+id/chockbox_sport"
            android:layout_width="wrap_content"
            android:layout_height="wrap_content"
            android:button="@drawable/checkbox"
            android:text="運動"/>

    </LinearLayout>

</LinearLayout>
//**CheckBoxActivity**
public class CheckBoxActivity extends Activity{
    private CheckBox mCheckBoxread;
    private CheckBox mCheckBoxtravel;
    private CheckBox mCheckBoxsport;

    @Override
    protected void onCreate(Bundle savedInstanceState) {
        super.onCreate(savedInstanceState);
        setContentView(R.layout.layout_checkbox);
        mCheckBoxread= (CheckBox) findViewById(R.id.checkbox_read);
        mCheckBoxtravel= (CheckBox) findViewById(R.id.chockbox_travel);
        mCheckBoxsport= (CheckBox) findViewById(R.id.chockbox_sport);

    }
}
![這裏寫圖片描述](http://img.blog.csdn.net/20150824193917750)

ImageView

//**layout_imageview.xml**
<?xml version="1.0" encoding="utf-8"?>
<ScrollView xmlns:android="http://schemas.android.com/apk/res/android"
    android:orientation="vertical"
    android:layout_width="match_parent"
    android:layout_height="match_parent">

    <LinearLayout
        android:layout_width="match_parent"
        android:layout_height="wrap_content"
        android:orientation="vertical">
        <!--原圖、中間-->
        <ImageView
            android:id="@+id/imageview"
            android:layout_width="match_parent"
            android:layout_height="wrap_content"
            android:src="@mipmap/angle"/>
        <LinearLayout
            android:layout_width="wrap_content"
            android:layout_height="wrap_content">
            <Button
                android:id="@+id/button_alpha_add"
                android:layout_width="wrap_content"
                android:layout_height="wrap_content"
                android:text="增加透明度"/>
            <Button
                android:id="@+id/button_alpha_sub"
                android:layout_width="wrap_content"
                android:layout_height="wrap_content"
                android:text="減少透明度"/>
        </LinearLayout>
        <!--原圖、中間 -->
        <ImageView
            android:layout_width="match_parent"
            android:layout_height="wrap_content"
            android:src="@mipmap/angle"
            android:scaleType="center" />
        <!--放大至整個view -->
        <ImageView
            android:layout_width="match_parent"
            android:layout_height="wrap_content"
            android:src="@mipmap/angle"
            android:scaleType="centerCrop"
            android:tint="#55ff0000"/>//蒙板、淡紅色
        <!--原圖、中間 -->
        <ImageView
            android:layout_width="match_parent"
            android:layout_height="wrap_content"
            android:src="@mipmap/angle"
            android:scaleType="centerInside"/>
        <!--原圖、中間 -->
        <ImageView
            android:layout_width="match_parent"
            android:layout_height="wrap_content"
            android:src="@mipmap/angle"
            android:scaleType="fitCenter"/>
        <!--原圖、左部 -->
        <ImageView
            android:layout_width="match_parent"
            android:layout_height="wrap_content"
            android:src="@mipmap/angle"
            android:scaleType="fitStart"/>
        <!--原圖、右部 -->
        <ImageView
            android:layout_width="match_parent"
            android:layout_height="wrap_content"
            android:src="@mipmap/angle"
            android:scaleType="fitEnd"/>
        <!--拉伸至整個view,和background效果相同 -->
        <ImageView
            android:layout_width="match_parent"
            android:layout_height="wrap_content"
            android:src="@mipmap/angle"
            android:scaleType="fitXY"/>
        <ImageView
            android:layout_width="match_parent"
            android:layout_height="wrap_content"
            android:src="@mipmap/angle"
            android:scaleType="matrix"/>

    </LinearLayout>
</ScrollView>
//**ImageViewActivity**
public class ImageViewActivity extends Activity implements OnClickListener{
    private ImageView mImageView;
    private Button mButtonadd;
    private Button mButtonsub;
    private int mAlphaCount;
    @Override
    protected void onCreate(Bundle savedInstanceState) {
        super.onCreate(savedInstanceState);
        setContentView(R.layout.layout_imageview);
        mImageView= (ImageView) findViewById(R.id.imageview);
        mImageView.setImageResource(R.mipmap.qing);
        mButtonadd= (Button) findViewById(R.id.button_alpha_add);
        mButtonsub= (Button) findViewById(R.id.button_alpha_sub);
        mButtonadd.setOnClickListener(this);
        mButtonsub.setOnClickListener(this);
    }

    @TargetApi(Build.VERSION_CODES.JELLY_BEAN)
    @Override
    //增加透明度、減少透明度
    public void onClick(View v) {
        int code= Build.VERSION.SDK_INT;
        switch (v.getId()){
            case R.id.button_alpha_add:
                mAlphaCount+=5;
                Log.d("code","當前手機版本號爲:"+code);
                if(mAlphaCount<16){
                    mImageView.setAlpha(mAlphaCount);
                }else{
                    mImageView.setImageAlpha(mAlphaCount);
                }
                break;
            case R.id.button_alpha_sub:
                mAlphaCount-=5;
                Log.d("code","當前手機版本號爲:"+code);
                if(mAlphaCount<16){
                    mImageView.setAlpha(mAlphaCount);
                }else{
                    mImageView.setImageAlpha(mAlphaCount);
                }
                break;
            default:
                break;

        }
    }
}
![這裏寫圖片描述](http://img.blog.csdn.net/20150824195246268)

ListView的Adapter

  1.ArrayAdapter
  2.SimpleAdapter
  3.自定義Adapter

ArrayAdapter

//**activity_listview.xml**
<?xml version="1.0" encoding="utf-8"?>
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
    android:orientation="vertical"
    android:layout_width="match_parent"
    android:layout_height="match_parent">

    <ListView
        android:id="@+id/listview"
        android:layout_width="match_parent"
        android:layout_height="match_parent">

    </ListView>

</LinearLayout>
//自定義list_item mylistview.xml
<TextView xmlns:android="http://schemas.android.com/apk/res/android"
    android:id="@android:id/text1"
    android:layout_width="match_parent"
    android:layout_height="match_parent"
    android:textColor="#ff0000"
    android:gravity="center_vertical"
    android:background="@mipmap/angle"
    />

//**ListViewActivity**
public class ListViewActivity extends Activity{
    private ListView mListView;
    private String[] array={"張思","李斯","王武"};
    protected void onCreate(Bundle savedInstanceState) {
        super.onCreate(savedInstanceState);
        setContentView(R.layout.activity_listview);
        mListView = (ListView) findViewById(R.id.listview);
        ArrayAdapter<String> adapter=new ArrayAdapter<String>(this,android.R.layout.simple_list_item_1,array);
//        ArrayAdapter<String> adapter=new ArrayAdapter<String>(this,R.layout.mylistview,array);   //自定義list_item
        mListView.setAdapter(adapter);
    }
![系統的ListView](http://img.blog.csdn.net/20150824203335269)}
![自定義list_item](http://img.blog.csdn.net/20150824210711797)

SimpleAdapter

//**activity_listview.xml**
<?xml version="1.0" encoding="utf-8"?>
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
    android:orientation="vertical"
    android:layout_width="match_parent"
    android:layout_height="match_parent">

    <ListView
        android:id="@+id/listview"
        android:layout_width="match_parent"
        android:layout_height="match_parent">
    </ListView>
</LinearLayout>


//**layout_simple.xml**
<?xml version="1.0" encoding="utf-8"?>
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
    android:orientation="horizontal"
    android:layout_width="match_parent"
    android:layout_height="match_parent"
    android:layout_margin="15dp"
    android:gravity="center_vertical"
    >
    <ImageView
        android:id="@+id/imageview_head"
        android:layout_width="100dp"
        android:layout_height="100dp" />
    <TextView
        android:id="@+id/textview_name"
        android:layout_width="wrap_content"
        android:layout_height="wrap_content"
        android:text="姓名"/>
    <LinearLayout
        android:layout_width="wrap_content"
        android:layout_height="wrap_content"
        android:orientation="vertical"
        android:layout_margin="10dp">
        <TextView
            android:id="@+id/textview_sex"
            android:layout_width="wrap_content"
            android:layout_height="wrap_content"
            android:text="性別"/>
        <TextView
            android:id="@+id/textview_age"
            android:layout_width="wrap_content"
            android:layout_height="wrap_content"
            android:text="年齡"/>

    </LinearLayout>
    <TextView
        android:id="@+id/textview_hobby"
        android:layout_width="wrap_content"
        android:layout_height="wrap_content"
        android:text="愛好"/>

</LinearLayout>

//**ListViewActivity**
public class ListViewActivity extends Activity{
    private ListView mListView;
    private List<HashMap<String,String>> mDate;
    @Override
    protected void onCreate(Bundle savedInstanceState) {
        super.onCreate(savedInstanceState);
        setContentView(R.layout.activity_listview);
        mListView = (ListView) findViewById(R.id.listview);
    initDate();
        SimpleAdapter adapter=new SimpleAdapter(this,mDate,R.layout.layout_simple,
                new String[]{"name","sex","age","hobby"},new int[]{R.id.textview_name,R.id.textview_sex,R.id.textview_age,R.id.textview_hobby});
        mListView.setAdapter(adapter);

       // mListView.setOnItemLongClickListener();  //長按
        mListView.setOnItemClickListener(new AdapterView.OnItemClickListener() {
            @Override
            public void onItemClick(AdapterView<?> parent, View view, int position, long id) {
                HashMap<String,String> itemDate=mDate.get(position);
                Log.d("date",itemDate.get("name")+itemDate.get("sex")+itemDate.get("age")+itemDate.get("hobby"));
            }
        });
     }
     private void initDate() {
        mDate=new ArrayList<>();
        HashMap<String,String> zhan=createHashMap("張思", "20", "女", "睡覺");
       mDate.add(zhan);
        HashMap<String,String> lisi=createHashMap("李斯","20","男","旅遊");
        mDate.add(lisi);
        HashMap<String,String> wang=createHashMap("王武","20","男","打遊戲");
        mDate.add(wang);
    }

       private HashMap<String,String> createHashMap(String name,String sex,String age,String hobby) {
           HashMap<String, String> hashmap = new HashMap<>();
           hashmap.put("name", name);
           hashmap.put("sex", sex);
           hashmap.put("age", age);
           hashmap.put("hobby", hobby);
           return hashmap;
       }
}
![這裏寫圖片描述](http://img.blog.csdn.net/20150824205547594)

自定義ListView

//**activity_listview.xml**
<?xml version="1.0" encoding="utf-8"?>
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
    android:orientation="vertical"
    android:layout_width="match_parent"
    android:layout_height="match_parent">

    <ListView
        android:id="@+id/listview"
        android:layout_width="match_parent"
        android:layout_height="match_parent">
    </ListView>
</LinearLayout>

//**Student類**
package com.example.administrator.homework.model;

/**
 * Created by Administrator on 2015/8/24.
 */
public class Student {
    private String name;
    private String sex;
    private String age;
    private String hobby;
    private int imp;
    public Student(String name,String sex,String age,String hobby,int imp){
        this.name=name;
        this.sex=sex;
        this.age=age;
        this.hobby=hobby;
        this.imp=imp;
    }

    public String getSex() {
        return sex;
    }

    public int getImp() {
        return imp;
    }

    public void setImp(int imp) {
        this.imp = imp;
    }

    public void setSex(String sex) {
        this.sex = sex;
    }

    public String getName() {
        return name;
    }

    public void setName(String name) {
        this.name = name;
    }

    public String getAge() {
        return age;
    }

    public void setAge(String age) {
        this.age = age;
    }

    public String getHobby() {
        return hobby;
    }

    public void setHobby(String hobby) {
        this.hobby = hobby;
    }
}

//**StudentAdapter類**
package com.example.administrator.homework.adapter;

import android.view.LayoutInflater;
import android.view.View;
import android.view.ViewGroup;
import android.widget.BaseAdapter;

import com.example.administrator.homework.R;
import com.example.administrator.homework.model.Student;

import java.util.List;



import android.view.LayoutInflater;
import android.view.View;
import android.view.ViewGroup;
import android.widget.BaseAdapter;
import android.widget.ImageView;
import android.widget.TextView;

import com.example.administrator.homework.model.Student;

import java.util.List;

/**
 * Created by Administrator on 2015/8/24.
 */
public class StudentAdapter extends BaseAdapter {
    private List<Student> mDate;
    private LayoutInflater mInflater;
    public StudentAdapter(LayoutInflater inflater,List<Student> date){
        //將inflater和數據傳遞到適配器中
        mInflater=inflater;
        mDate=date;
    }




    @Override
    public int getCount() {
        //得到ListView將要顯示的數據的條數
        return mDate.size();
    }

    @Override
    public Object getItem(int position) {
        //返回索引
        return position;
    }

    @Override
    public long getItemId(int position) {
        //返回索引
        return position;
    }

    @Override
    public View getView(int position, View convertView, ViewGroup parent) {
        View view=mInflater.inflate(R.layout.layout_simple,null);
        Student student=mDate.get(position);
        ImageView imageView= (ImageView) view.findViewById(R.id.imageview_head);
        TextView teview_name= (TextView) view.findViewById(R.id.textview_name);
        TextView textview_sex= (TextView) view.findViewById(R.id.textview_sex);
        TextView textview_age= (TextView) view.findViewById(R.id.textview_age);
        TextView texview_hobby= (TextView) view.findViewById(R.id.textview_hobby);
        imageView.setImageResource(student.getImp());
        teview_name.setText(student.getName());
        textview_sex.setText(student.getSex());
        textview_age.setText(student.getAge());
        texview_hobby.setText(student.getHobby());
        return view;
    }
}

//**ListViewActivity**
public class ListViewActivity extends Activity{
    private ListView mListView;
    private String[] array={"張思","李斯","王武"};
    private List<Student> mDate;
    @Override
    protected void onCreate(Bundle savedInstanceState) {
        super.onCreate(savedInstanceState);
        setContentView(R.layout.activity_listview);
        mListView = (ListView) findViewById(R.id.listview);
     LayoutInflater inflater=getLayoutInflater();
        initDate();
       StudentAdapter adapter=new StudentAdapter(inflater,mDate);
       mListView.setAdapter(adapter);

    }
     private void initDate() {
        mDate = new ArrayList<>();
        Student zhang = new Student("張思", "女", "20", "睡覺", R.mipmap.angle);
        mDate.add(zhang);
        Student lisi = new Student("李斯", "男", "22", "旅遊", R.mipmap.qing);
        mDate.add(lisi);
        Student wang = new Student("王武", "男", "19", "打遊戲", R.mipmap.angle);
        mDate.add(wang);
    }
}
![這裏寫圖片描述](http://img.blog.csdn.net/20150824210514833)
發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章