Не удалось просмотреть элементы андроида java / kotlin recyclerview

Я пытаюсь создать приложение, которое сканирует устройства Bluetooth и отображает их в режиме recyclerview. Я пишу некоторые приложения, использующие java и некоторые приложения в kotlin. по какой-то причине мои пункты recyclerview не видны. кто-нибудь, пожалуйста, помогите мне найти ошибку, которую я делаю. Я отправляю код для своей деятельности, а также просмотр моего ресайклера. Чтобы уточнить мой вопрос. Открытие преуспевает, устройства найдены, и все наследуемые методы в моем адаптере, похоже, вызываются. Я разместил в них сообщения журнала, и я все еще ничего не вижу в recyclerview. Почему ничего не появляется? вот моя деятельность, написанная в java:

public class ToofActivity extends AppCompatActivity implements CompoundButton.OnCheckedChangeListener { private static final String TAG = "ToofActivity"; private static final int REQUEST_COARSE_LOCATION = 222; private static BluetoothAdapter btAdapter; private TextView mStatusLabel; private Switch mStatusSwitch; private ProgressBar mProgressBar; private RecyclerView mDeviceRecylcer; private static ArrayList<BluetoothDevice> mDevices = new ArrayList<>(); private DeviceAdapter mAdapter; @Override protected void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); setContentView(R.layout.activity_toof); checkLocationPermission(); btAdapter = BluetoothAdapter.getDefaultAdapter(); mStatusLabel = (TextView) findViewById(R.id.status_view); mStatusLabel.setText(btAdapter.isEnabled() ? "Active" : "Inactive"); mStatusSwitch = (Switch) findViewById(R.id.status_switch); mStatusSwitch.setChecked(btAdapter.isEnabled()); mStatusSwitch.setOnCheckedChangeListener(this); mProgressBar = (ProgressBar) findViewById(R.id.search_progress_bar); mDeviceRecylcer = (RecyclerView) findViewById(R.id.device_recycler); mDeviceRecylcer.setLayoutManager(new LinearLayoutManager(this)); mAdapter = new DeviceAdapter(getApplicationContext()); mDeviceRecylcer.setAdapter(mAdapter); } @Override public boolean onCreateOptionsMenu(Menu menu) { MenuInflater inflater = getMenuInflater(); inflater.inflate(R.menu.options_menu, menu); return super.onCreateOptionsMenu(menu); } @Override public boolean onOptionsItemSelected(MenuItem item) { switch (item.getItemId()) { case R.id.searchOption: DiscoveryTask discovery = new DiscoveryTask(btAdapter, this, mProgressBar); discovery.setOnCompleteListener(new DiscoveryTask.OnCompletedListener() { @Override public void onComplete() { mAdapter.updateItems(mDevices); } }); discovery.execute((Void) null); break; } return true; } @Override public void onCheckedChanged(CompoundButton buttonView, boolean isChecked) { if (isChecked) { btAdapter.enable(); mStatusLabel.setText("Active"); } else { btAdapter.disable(); mStatusLabel.setText("Inactive"); } } public static void setDeviceList(ArrayList<BluetoothDevice> deviceList) { mDevices.clear(); mDevices = deviceList; } protected void checkLocationPermission() { if (this.checkSelfPermission(Manifest.permission.ACCESS_COARSE_LOCATION) != PackageManager.PERMISSION_GRANTED) { ActivityCompat.requestPermissions(this, new String[]{Manifest.permission.ACCESS_COARSE_LOCATION}, REQUEST_COARSE_LOCATION); } } @Override public void onRequestPermissionsResult(int requestCode, String permissions[], int[] grantResults) { switch (requestCode) { case REQUEST_COARSE_LOCATION: { if (grantResults.length <= 0 || grantResults[0] != PackageManager.PERMISSION_GRANTED) { checkLocationPermission(); break; } } } } } 

и вот код для моего recyclerview, написанный в kotlin:

 class DeviceAdapter(val mContext : Context) : RecyclerView.Adapter<DeviceAdapter.DeviceHolder>(){ val mDevices = ArrayList<BluetoothDevice>() fun updateItems(list: ArrayList<BluetoothDevice>){ mDevices.clear() mDevices.addAll(list) Log.d(TAG, "updating items : $mDevices") notifyDataSetChanged() } override fun onBindViewHolder(holder: DeviceHolder, position: Int) { Log.d(TAG, "onBindViewHolder called!") holder.bindItems(mDevices.get(position)) } override fun onCreateViewHolder(parent: ViewGroup?, viewType: Int): DeviceHolder{ Log.d(TAG, "onCreateViewHolder called!") val v = LayoutInflater.from(mContext).inflate(R.layout.device_item, parent, false) return DeviceHolder(v) } override fun getItemCount(): Int { return mDevices.size } inner class DeviceHolder(itemView: View) : RecyclerView.ViewHolder(itemView){ val nameView = itemView.findViewById(R.id.nameView) as TextView val addrView = itemView.findViewById(R.id.addressView) as TextView fun bindItems(btDevice: BluetoothDevice){ Log.d(TAG, "holder created!") nameView.text = btDevice.name addrView.text = btDevice.address } } companion object { val TAG = "DeviceAdapter" } } 

Спасибо тебе за помощь.

Solutions Collecting From Web of "Не удалось просмотреть элементы андроида java / kotlin recyclerview"