আমি কিভাবে যারা ব্যবহার Kotlin কি বলেন @JafarKhQ না করতে দেখাতে চান শুধু যে kotlin যে শক্তি তাদের সাহায্য ও থিম এবারও সংরক্ষণ করুন:
সুতরাং আপনাকে নতুন নতুন ইনস্ট্যান্স ফাংশন তৈরি করতে একটি সহযোগী আপত্তি তৈরি করতে হবে
আপনি যা চান ফাংশনটির প্যারামেটার সেট করতে পারেন। ব্যবহার
val args = Bundle()
আপনি আপনার আরগ সেট করতে পারেন।
আপনি এখন args.putSomthing
আপনার নতুনআইন্সটেন্স ফাংশনটিতে প্রিমেটার হিসাবে আপনার দেওয়া আরগগুলি যুক্ত করতে ব্যবহার করতে পারেন।
putString(key:String,str:String)
উদাহরণস্বরূপ স্ট্রিং যোগ করার জন্য এবং তাই
এখন আপনি যে যুক্তিটি ব্যবহার করতে পারেন তা পেতে
arguments.getSomthing(Key:String)
=> টি পছন্দarguments.getString("1")
এখানে একটি সম্পূর্ণ উদাহরণ
class IntervModifFragment : DialogFragment(), ModContract.View
{
companion object {
fun newInstance( plom:String,type:String,position: Int):IntervModifFragment {
val fragment =IntervModifFragment()
val args = Bundle()
args.putString( "1",plom)
args.putString("2",type)
args.putInt("3",position)
fragment.arguments = args
return fragment
}
}
...
override fun onViewCreated(view: View?, savedInstanceState: Bundle?) {
super.onViewCreated(view, savedInstanceState)
fillSpinerPlom(view,arguments.getString("1"))
fillSpinerType(view, arguments.getString("2"))
confirmer_virme.setOnClickListener({on_confirmClick( arguments.getInt("3"))})
val dateSetListener = object : DatePickerDialog.OnDateSetListener {
override fun onDateSet(view: DatePicker, year: Int, monthOfYear: Int,
dayOfMonth: Int) {
val datep= DateT(year,monthOfYear,dayOfMonth)
updateDateInView(datep.date)
}
}
}
...
}
এখন আপনার ডায়ালগটি কীভাবে তৈরি করবেন আপনি অন্য ক্লাসে এরকম কিছু করতে পারেন
val dialog = IntervModifFragment.newInstance(ListInter.list[position].plom,ListInter.list[position].type,position)
উদাহরণস্বরূপ এটি পছন্দ করুন
class InterListAdapter(private val context: Context, linkedList: LinkedList<InterItem> ) : RecyclerView.Adapter<InterListAdapter.ViewHolder>()
{
...
override fun onBindViewHolder(holder: ViewHolder, position: Int) {
...
holder.btn_update!!.setOnClickListener {
val dialog = IntervModifFragment.newInstance(ListInter.list[position].plom,ListInter.list[position].type,position)
val ft = (context as AppCompatActivity).supportFragmentManager.beginTransaction()
dialog.show(ft, ContentValues.TAG)
}
...
}
..
}