title: IllegalArgumentException on parameter convertView at Adapter.getView Kotlin android
body: <pre><code>java.lang.IllegalArgumentException: Parameter specified as non-null is null: method kotlin.jvm.internal.Intrinsics.checkParameterIsNotNull, parameter convertView
  Adapter.getView
   at android.widget.AbsListView.obtainView(AbsListView.java:2346)
          at android.widget.ListView.makeAndAddView(ListView.java:1876)
          at android.widget.ListView.fillDown(ListView.java:702)
          at android.widget.ListView.fillFromTop(ListView.java:763)
          at android.widget.ListView.layoutChildren(ListView.java:1671)
          at android.widget.AbsListView.onLayout(AbsListView.java:2148)
  </code></pre>
  
  <p>This is logcat of android.
  I tried with java it's working fine base adapter something wrong in Adapter or other.
  I tried with the <code>public constructor</code> and also array list count 3 found i checked it. Alway it's crash at <code>getView</code></p>
  
  <p>MyAdapter Code::</p>
  
  <pre><code>   inner class MyAppAdapter constructor(private val parkingList: ArrayList&lt;App&gt;, private val mContext: Context) : BaseAdapter() {
  
          override fun getCount(): Int {
              return this.parkingList.size
          }
  
          override fun getItem(position: Int): Any {
              return position
          }
  
          override fun getItemId(position: Int): Long {
              return position.toLong()
          }
  
          override fun getView(position: Int, convertView: View, parent: ViewGroup): View? {
              val viewHolder: ViewHolder
              var rowView: View? = convertView
              if (rowView == null) {
                  rowView = LayoutInflater.from(mContext).inflate(R.layout.item_more_apps, parent, false)
                  viewHolder = ViewHolder()
                  viewHolder.appIcon = rowView.findViewById(R.id.appIcon)
                  viewHolder.appName = rowView.findViewById(R.id.appName)
                  viewHolder.appDescription = rowView.findViewById(R.id.appDescription)
                  rowView.tag = viewHolder
              } else {
                  viewHolder = convertView.tag as ViewHolder
              }
              viewHolder.appName!!.text = String.format("%s", this.parkingList[position].name)
              viewHolder.appDescription!!.text = String.format("%s", this.parkingList[position].description)
              Glide.with(applicationContext).load(this.parkingList[position].icon).into(viewHolder.appIcon!!)
              rowView?.setOnClickListener {
                  try {
                      startActivity(Intent("android.intent.action.VIEW", Uri.parse("market://details?id=" + this@MyAppAdapter.parkingList[position].link)))
                  } catch (e: ActivityNotFoundException) {
                      startActivity(Intent("android.intent.action.VIEW", Uri.parse("http://play.google.com/store/apps/details?id=" + this@MyAppAdapter.parkingList[position].link)))
                  }
              }
              return rowView
          }
  
          inner class ViewHolder {
              var appDescription: TextView? = null
              var appIcon: ImageView? = null
              var appName: TextView? = null
          }
      }
  </code></pre>
  
  <p>Used at <code>AsyncTask</code> -> <code>onPostExecute</code></p>
  
  <pre><code>  myAppAdapter = MyAppAdapter(appArrayList, applicationContext)
              lvPoses!!.adapter = myAppAdapter
  </code></pre>
  
  <p>Variable Decleared like this</p>
  
  <pre><code>   lateinit var myAppAdapter: MyAppAdapter
      private val appArrayList = ArrayList&lt;App&gt;()
      private var lvPoses: ListView? = null
  </code></pre>