Android第五次作业
<?xml version="1.0" encoding="utf-8"?> <LinearLayout xmlns:android="http://schemas.android.com/apk/res/android" android:layout_width="match_parent" android:layout_height="match_parent" android:orientation="vertical"> <TextView android:id="@+id/textView" android:layout_width="match_parent" android:layout_height="35dp" android:background="#CDDC39" android:gravity="center" android:text="优鲜果园" android:textColor="#FF9800" android:textSize="25sp" /> <LinearLayout android:layout_width="match_parent" android:layout_height="wrap_content" android:layout_weight="1" android:orientation="vertical"> <ListView android:id="@+id/fruit_item" android:layout_width="match_parent" android:layout_height="match_parent" /> </LinearLayout> </LinearLayout>
<?xml version="1.0" encoding="utf-8"?> <LinearLayout xmlns:android="http://schemas.android.com/apk/res/android" xmlns:app="http://schemas.android.com/apk/res-auto" android:layout_width="match_parent" android:layout_height="match_parent" > <ImageView android:id="@+id/imageView" android:layout_width="100dp" android:layout_height="100dp" app:srcCompat="@mipmap/mango" /> <LinearLayout android:layout_width="match_parent" android:layout_height="100dp" android:gravity="left|center_vertical" android:orientation="vertical" android:scrollbarSize="6dp"> <TextView android:id="@+id/textName" android:layout_width="wrap_content" android:layout_height="wrap_content" android:text="芒果" /> <TextView android:id="@+id/textPrice" android:layout_width="wrap_content" android:layout_height="wrap_content" android:text="价格:6元1斤" /> </LinearLayout> </LinearLayout>
package com.example.listview; public class Fruit { private int imageId; private String Name,Price; public Fruit(String Name, String Price, int imageId) { super(); this.imageId = imageId; this.Name = Name; this.Price = Price; } public int getImageId() { return imageId; } public void setImageId(int imageId) { this.imageId = imageId; } public String getName() { return Name; } public void setName(String name) { Name = name; } public String getPrice() { return Price; } public void setPrice(String price) { Price = price; } public Object getItem(int position){ return position; } }
package com.example.listview; import android.content.Context; import android.view.LayoutInflater; import android.view.View; import android.view.ViewGroup; import android.widget.ArrayAdapter; import android.widget.ImageView; import android.widget.TextView; import java.util.List; public class FruitAdapte extends ArrayAdapter { int resourceId; public FruitAdapte(Context context, int resource, List<Fruit> objects){ super(context, resource,objects); resourceId=resource; } @Override public View getView(int position, View convertView, ViewGroup parent){ //获取当前fruit实例 Fruit fruit = (Fruit)getItem(position); View view = LayoutInflater.from(getContext()).inflate(resourceId,null); ImageView iv = (ImageView)view.findViewById(R.id.imageView); TextView tv = (TextView)view.findViewById(R.id.textName); TextView pv = (TextView)view.findViewById(R.id.textPrice); iv.setImageResource(fruit.getImageId()); tv.setText((CharSequence) fruit.getName()); return view; } }
package com.example.listview; import androidx.appcompat.app.AppCompatActivity; import android.app.Activity; import android.os.Bundle; import android.widget.ListView; import java.util.ArrayList; import java.util.List; public class MainActivity extends Activity { final List<Fruit> fruitList = new ArrayList<Fruit>(); @Override protected void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); setContentView(R.layout.activity_main); initFruits(); FruitAdapte adapter = new FruitAdapte(this,R.layout.item,fruitList); ListView lv = (ListView)findViewById(R.id.fruit_item); lv.setAdapter(adapter); } public void initFruits(){ Fruit apple = new Fruit("苹果","5元1斤",R.mipmap.apple); fruitList.add(apple); Fruit banana = new Fruit("香蕉","6.5元1斤",R.mipmap.banana); fruitList.add(banana); Fruit grape = new Fruit("葡萄","10元1斤",R.mipmap.grape); fruitList.add(grape); Fruit kiwi = new Fruit("猕猴桃","12元1斤",R.mipmap.kiwi); fruitList.add(kiwi); Fruit mango = new Fruit("芒果","6元1斤",R.mipmap.mango); fruitList.add(mango); Fruit orange = new Fruit("橘子","4.8元1斤",R.mipmap.orange); fruitList.add(orange); } }