布局样式
<?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"> <LinearLayout android:layout_width="wrap_content" android:layout_height="wrap_content"> </LinearLayout> <ImageView android:id="@+id/imageview" android:layout_width="match_parent" android:layout_height="100dp" android:layout_gravity="center" android:layout_marginTop="60dp" android:src="@mipmap/ic_launcher" /> <Button android:id="@+id/jion" android:layout_marginTop="20dp" android:background="@color/colorPrimary" android:layout_marginLeft="20dp" android:layout_marginRight="20dp" android:layout_width="match_parent" android:layout_height="wrap_content" android:text="登陆" android:textSize="20sp" /> <android.support.v7.widget.RecyclerView android:layout_marginTop="10dp" android:layout_width="match_parent" android:layout_height="wrap_content" android:id="@+id/lvlist" /> </LinearLayout>
item的布局样式
<?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="horizontal"> <TextView android:layout_marginTop="10dp" android:text="22222222222222222" android:id="@+id/name" android:layout_width="wrap_content" android:layout_height="wrap_content" /> <TextView android:layout_marginLeft="20dp" android:layout_marginTop="10dp" android:text="22222222222222222" android:id="@+id/id" android:layout_width="wrap_content" android:layout_height="wrap_content" /> </LinearLayout>
bean类的写法
class Student { var name: String? = null var id: String? = null constructor(name: String?, id: String?) { this.name = name this.id = id } }
recyclerview的adapter实现方式
package com.pax.cn.kotlion import android.content.Context import android.support.v7.widget.RecyclerView import android.support.v7.widget.RecyclerView.Adapter import android.view.LayoutInflater import android.view.View import android.view.ViewGroup import android.widget.TextView import com.pax.cn.kotlion.RecyleAdapter.MyViewholder /** * 作者:Created by tang on 2017/6/20/020 16:02 */ class RecyleAdapter : Adapter<MyViewholder> { private var context: Context? = null private var itemList: ArrayList<Student>? = null constructor(itemList: ArrayList<Student>, context: Context) { this.context = context this.itemList = itemList } override fun onBindViewHolder(p0: MyViewholder?, p1: Int) { p0!!.name.text = itemList!!.get(p1).name p0.id.text = itemList!!.get(p1).id } override fun getItemCount(): Int { return itemList?.size as Int } override fun onCreateViewHolder(p0: ViewGroup?, p1: Int): MyViewholder { return MyViewholder(LayoutInflater.from(context).inflate(R.layout.item, p0, false)) } class MyViewholder : RecyclerView.ViewHolder { constructor(itemView: View?) : super(itemView) { name = itemView?.findViewById(R.id.name) as TextView id = itemView.findViewById(R.id.id) as TextView } var name: TextView var id: TextView } }
class MainActivity : AppCompatActivity() { var itemList = ArrayList<Student>() private var adapter :RecyleAdapter?=null // var itemList = ArrayList<String>() // private var adapter :TestAdapter?=null override fun onCreate(savedInstanceState: Bundle?) { super.onCreate(savedInstanceState) setContentView(R.layout.activity_main) inidata() adapter = RecyleAdapter(itemList, this) lvlist.layoutManager = LinearLayoutManager(this) // adapter = TestAdapter(itemList, this) jion.setOnClickListener({ //Toast.makeText(this,"进入" ,Toast.LENGTH_SHORT).show() lvlist.adapter =adapter }) } fun inidata() { var i: Int = 0 var end: Int = 10 while (i < end) { var student=Student("名字"+i,"学号"+i) itemList.add(student) // itemList.add(""+i) i++ } } }效果图