Android kotlin 之 Fragment怎樣直接獲取控制元件
阿新 • • 發佈:2019-01-02
- 在onCreateView方法中你可以直接使用當前佈局返回的view.id來使用控制元件。
override fun onCreateView(inflater: LayoutInflater?, container: ViewGroup?,
savedInstanceState: Bundle?): View? {
val view = inflater!!.inflate(R.layout.fragment_item_list, container, false)
adapter = ArrayAdapter(context, android.R .layout.simple_list_item_1, dataList)
view.listView.adapter = adapter
return view
}
即: view.listView.adapter = adapter
- 在其他的地方你就可以直接使用getView().id來使用控制元件,但是在kotlin語言中,將getView()轉換為了view,所有也可以直接使用view.id,
但是記得要匯入包
import kotlinx.android.synthetic.main.*xml佈局名稱*.view.*
我這裡為:
import kotlinx.android .synthetic.main.fragment_item_list.view.*
綜上,在Activity中可以直接使用佈局id,在Fragment中需要使用view.id。
注意view可能為空,需要加上判斷即:view!!.id
例如:
view!!.titleText.text = selectedCity!!.cityName
view!!.backButton.visibility = View.VISIBLE