Kotlin 重寫項目筆記(持續(xù)更新)

<h4>7、${} 正確使用方法</h4>
一個DataBean實體類锦聊,想要打印其中一個屬性值

  • println("sth $databean.name") 這是錯誤的寫法 帶"."的都屬于表達式 必須用"{}"包起來不然它會打印出 "sth @databean對象值 .name"
  • println("sth ${databean.name}") 這才是正確寫法

<h4>6翰苫、RxJava+Retrofit中Service定義時可變Url @Path("")語法</h4>
<p><code>
/**
* @param type 資源類型
* @param pageNum 每頁數(shù)量
* @param type 頁數(shù)
*/
@GET("data/{type}/{count}/{pageNum}")
fun getGirls(@Path("type") s: String,
@Path("count") count: Int,
@Path("pageNum") pageNum: Int ): Observable<Result<List<GirlBean>>></code></p>

<h4>5征唬、BaseRecyclerViewAdapter封裝</h4>
<p><code>abstract class BaseRecyclerViewAdapter<D, VH : BaseRecyclerViewAdapter.BaseViewHolder>(layoutResId: Int, data: MutableList<D>) : RecyclerView.Adapter<VH>() {

open var layoutResId: Int = 0 //item資源Id
open var data: List<D> = data //數(shù)據(jù)集合
open var view: View? = null

init {
    if (layoutResId != 0)
        this.layoutResId = layoutResId
    else
        throw NullPointerException("請設(shè)置Item資源Id")
}

override fun onBindViewHolder(holder: VH, position: Int) {
    bindData(holder, data[position],position)
}

override fun getItemCount(): Int {
    return data.size
}

/**
 * 綁定數(shù)據(jù)
 * @param  holder
 * *
 * @param data
 */
protected abstract fun bindData(holder: VH, data: D,position: Int)

open class BaseViewHolder : RecyclerView.ViewHolder{
    open var mView: View? = null
    constructor(view: View): super(view){
        mView = view
    }
}

}
</code></p>
<p>在Activity中定義MyRecyclerViewAdapter</p>
<p><code>
inner class MyRecyclerViewAdapter<VH: MyViewHolder>(layoutResId: Int, data: MutableList<GirlBean>) : BaseRecyclerViewAdapter<GirlBean, VH>(layoutResId, data) {

    override fun onCreateViewHolder(parent: ViewGroup, viewType: Int): VH {
        view = LayoutInflater.from(parent.context).inflate(layoutResId, parent, false)
        return MyViewHolder(view!!) as VH
    }

    override fun bindData(holder: VH, data: GirlBean,position: Int) {
        this@MainActivity.loadImg(data.url,holder.imageview!!)
        holder.textview?.text = data.who
        loadImg(data.url, holder.imageview!!)
        holder.imageview?.setOnClickListener { mListener.onItemClick(position, holder.imageview!!) }
    }
}

inner class MyViewHolder(view: View) : BaseRecyclerViewAdapter.BaseViewHolder(view) {
    var imageview: ImageView? = null
    var textview: TextView? = null
    init {
        imageview = mView?.findViewById(R.id.imageview) as ImageView?
        textview = mView?.findViewById(R.id.textview) as TextView?
    }
}</code></p>

<p>初始化時使用</p>
<p><code>
mAdapter = MyRecyclerViewAdapter(R.layout.item_girl,mList)
recyclerview.adapter = mAdapter

</code></p>

<h4>4、new一個對象(舉例Runnable)</h4>
val mRunnable = object : Runable { }
最后大括號使用lambda

<h4>3诗眨、單例實現(xiàn)</h4>
<code> companion object{
fun getInstance(): SPUtil {
return Inner.instance
}
}
private object Inner{
val instance = SPUtil()
}</code>
調(diào)用:SPUtil.getInstance

<h4>2、Map使用</h4>
kotlin中Map是val不可變類型孕讳,所以沒有put方法
解決方法使用MutableMap可變類型

<h4>1匠楚、跳轉(zhuǎn)Activity</h4>
startActivity(Intent(this, MainActivity::class.java))
注意:使用::反射class類

最后編輯于
?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請聯(lián)系作者
  • 序言:七十年代末,一起剝皮案震驚了整個濱河市厂财,隨后出現(xiàn)的幾起案子芋簿,更是在濱河造成了極大的恐慌,老刑警劉巖璃饱,帶你破解...
    沈念sama閱讀 211,042評論 6 490
  • 序言:濱河連續(xù)發(fā)生了三起死亡事件与斤,死亡現(xiàn)場離奇詭異,居然都是意外死亡荚恶,警方通過查閱死者的電腦和手機撩穿,發(fā)現(xiàn)死者居然都...
    沈念sama閱讀 89,996評論 2 384
  • 文/潘曉璐 我一進店門,熙熙樓的掌柜王于貴愁眉苦臉地迎上來谒撼,“玉大人食寡,你說我怎么就攤上這事±保” “怎么了抵皱?”我有些...
    開封第一講書人閱讀 156,674評論 0 345
  • 文/不壞的土叔 我叫張陵,是天一觀的道長辩蛋。 經(jīng)常有香客問我呻畸,道長,這世上最難降的妖魔是什么悼院? 我笑而不...
    開封第一講書人閱讀 56,340評論 1 283
  • 正文 為了忘掉前任伤为,我火速辦了婚禮,結(jié)果婚禮上据途,老公的妹妹穿的比我還像新娘绞愚。我一直安慰自己剑鞍,他們只是感情好,可當我...
    茶點故事閱讀 65,404評論 5 384
  • 文/花漫 我一把揭開白布爽醋。 她就那樣靜靜地躺著,像睡著了一般便脊。 火紅的嫁衣襯著肌膚如雪蚂四。 梳的紋絲不亂的頭發(fā)上,一...
    開封第一講書人閱讀 49,749評論 1 289
  • 那天哪痰,我揣著相機與錄音遂赠,去河邊找鬼。 笑死晌杰,一個胖子當著我的面吹牛跷睦,可吹牛的內(nèi)容都是我干的。 我是一名探鬼主播肋演,決...
    沈念sama閱讀 38,902評論 3 405
  • 文/蒼蘭香墨 我猛地睜開眼抑诸,長吁一口氣:“原來是場噩夢啊……” “哼!你這毒婦竟也來了爹殊?” 一聲冷哼從身側(cè)響起蜕乡,我...
    開封第一講書人閱讀 37,662評論 0 266
  • 序言:老撾萬榮一對情侶失蹤,失蹤者是張志新(化名)和其女友劉穎梗夸,沒想到半個月后层玲,有當?shù)厝嗽跇淞掷锇l(fā)現(xiàn)了一具尸體,經(jīng)...
    沈念sama閱讀 44,110評論 1 303
  • 正文 獨居荒郊野嶺守林人離奇死亡反症,尸身上長有42處帶血的膿包…… 初始之章·張勛 以下內(nèi)容為張勛視角 年9月15日...
    茶點故事閱讀 36,451評論 2 325
  • 正文 我和宋清朗相戀三年辛块,在試婚紗的時候發(fā)現(xiàn)自己被綠了。 大學時的朋友給我發(fā)了我未婚夫和他白月光在一起吃飯的照片铅碍。...
    茶點故事閱讀 38,577評論 1 340
  • 序言:一個原本活蹦亂跳的男人離奇死亡润绵,死狀恐怖,靈堂內(nèi)的尸體忽然破棺而出胞谈,到底是詐尸還是另有隱情授药,我是刑警寧澤,帶...
    沈念sama閱讀 34,258評論 4 328
  • 正文 年R本政府宣布呜魄,位于F島的核電站悔叽,受9級特大地震影響,放射性物質(zhì)發(fā)生泄漏爵嗅。R本人自食惡果不足惜娇澎,卻給世界環(huán)境...
    茶點故事閱讀 39,848評論 3 312
  • 文/蒙蒙 一、第九天 我趴在偏房一處隱蔽的房頂上張望睹晒。 院中可真熱鬧趟庄,春花似錦括细、人聲如沸。這莊子的主人今日做“春日...
    開封第一講書人閱讀 30,726評論 0 21
  • 文/蒼蘭香墨 我抬頭看了看天上的太陽。三九已至猫十,卻和暖如春览濒,著一層夾襖步出監(jiān)牢的瞬間,已是汗流浹背拖云。 一陣腳步聲響...
    開封第一講書人閱讀 31,952評論 1 264
  • 我被黑心中介騙來泰國打工贷笛, 沒想到剛下飛機就差點兒被人妖公主榨干…… 1. 我叫王不留,地道東北人宙项。 一個月前我還...
    沈念sama閱讀 46,271評論 2 360
  • 正文 我出身青樓乏苦,卻偏偏與公主長得像,于是被迫代替她去往敵國和親尤筐。 傳聞我的和親對象是個殘疾皇子汇荐,可洞房花燭夜當晚...
    茶點故事閱讀 43,452評論 2 348

推薦閱讀更多精彩內(nèi)容