美文网首页
Kotlin for android学习十(布局篇):开始开发

Kotlin for android学习十(布局篇):开始开发

作者: crossroads | 来源:发表于2017-10-24 11:21 被阅读17次

前言

kotlin官网kotlin教程学习教程的笔记。
终于可以正式运用了O(∩_∩)O

一、布局中控件的使用

activity_main.xml

   <TextView
        android:id="@+id/message"
        android:layout_width="wrap_content"
        android:layout_height="wrap_content"
/>

MainActivity.kt

import kotlinx.android.synthetic.main.activity_main.*
class MainActivity : Activity() {
    override fun onCreate(savedInstanceState: Bundle?) {
        super.onCreate(savedInstanceState)
        setContentView(R.layout.activity_main)
        message.text="hello"
    }
}

二、用kotlin实现recyclerView的简单使用


class MainActivity : Activity() {
    override fun onCreate(savedInstanceState: Bundle?) {
        super.onCreate(savedInstanceState)
        setContentView(R.layout.activity_main)
        recyclerview.setHasFixedSize(true)
        val list=ArrayList<String>()
        (1..100).mapTo(list) { "this is $it" }
        recyclerview.setHasFixedSize(true)
        recyclerview.layoutManager=LinearLayoutManager(this)
        recyclerview.adapter = MyAdapter(list)
    }
}


class MyAdapter(var list: List<String>) : RecyclerView.Adapter<MyAdapter.MyViewHolder>() {
    override fun onBindViewHolder(holder: MyAdapter.MyViewHolder?, position: Int) {
        holder?.item?.text=list[position]
    }

    override fun onCreateViewHolder(parent: ViewGroup?, viewType: Int):MyAdapter.MyViewHolder {
        return MyViewHolder(LayoutInflater.from(parent?.context).inflate(android.R.layout.simple_list_item_1,parent,false))
    }

    override fun getItemCount(): Int =list.size

    class MyViewHolder(itemView:View) : RecyclerView.ViewHolder(itemView) {
        var item= itemView.findViewById<TextView>(android.R.id.text1)
    }
}

后记

点击链接查看kotlin-for-android-developers的源码

相关文章

网友评论

      本文标题:Kotlin for android学习十(布局篇):开始开发

      本文链接:https://www.haomeiwen.com/subject/drsfextx.html