android|android studio学习知识点

1.android:onClick=“XXX” 【android|android studio学习知识点】一般监听OnClickListener事件,我们都是通过Button button = (Button)findViewById(…);
button.setOClickLisener…这样的方式来实现。
其实可以在xml中定义好方法名称,在Activity中实现该方法就可以了


那么在java文件中必须实现onFlags的方法
2.通过数据线连接自己的手机调试运行项目 右上角点开绿三角会显示当前已经识别连接了的设备和虚拟机
点击troubleshoot device connections可以查看相关问题解决办法
  1. 连接手机后需要在开发者选项里面打开USB调试
  2. USB调试下面有USB安装,需要允许
  3. 然后AS会自动识别
    android|android studio学习知识点
    文章图片

    3.调用系统相册进行图像处理等
public void select(View view){ Log.d("grabCut","选择图片"); if(ContextCompat.checkSelfPermission(MainActivity.this, Manifest.permission.WRITE_EXTERNAL_STORAGE) != PackageManager.PERMISSION_GRANTED){ ActivityCompat.requestPermissions(MainActivity.this,new String[]{ Manifest.permission.WRITE_EXTERNAL_STORAGE },1); } Intent intent = new Intent(Intent.ACTION_PICK, android.provider.MediaStore.Images.Media.EXTERNAL_CONTENT_URI); startActivityForResult(intent, IMAGE_REQUEST_CODE); } @Override protected void onActivityResult(int requestCode, int resultCode, Intent data) { //在相册里面选择好相片之后调回到现在的这个activity中 switch (requestCode) { case IMAGE_REQUEST_CODE://IMAGE_REQUEST_CODE 需要>-1,此处在前面声明为1 if (resultCode == RESULT_OK) {//resultcode是setResult里面设置的code值 try { Uri selectedImage = data.getData(); //获取系统返回的照片的Uri String[] filePathColumn = {MediaStore.Images.Media.DATA}; Cursor cursor = getContentResolver().query(selectedImage, filePathColumn, null, null, null); //从系统表中查询指定Uri对应的照片 cursor.moveToFirst(); int columnIndex = cursor.getColumnIndex(filePathColumn[0]); path = cursor.getString(columnIndex); //获取照片路径 cursor.close(); bitmap = BitmapFactory.decodeFile(path); imageView.setImageBitmap(bitmap); todo(); //封装了的处理函数 } catch (Exception e) { // TODO Auto-generatedcatch block e.printStackTrace(); } }else{ Log.i("MainActivity","operation error"); } super.onActivityResult(requestCode, resultCode, data); } }

3. getExternalStorageDirectory() is deprecated Context.getExternalFilesDir代替,Android Q以后Environment.getExternalStorageDirectory()返回的路径可能无法直接访问,所以改成了Context.getExternalFilesDir
File appDir = new File(context.getExternalFilesDir(null),"xyz");

最后 这里也有不少有用的知识点

    推荐阅读