小编Ali*_*Nem的帖子

在IntelliJ或Android Studio中进行重构时,如何将静态变量从类移动到另一个类?

假设Class A有一些静态参数:

public Class A {
    public static final String KEY_1="key1"
    public static final String KEY_2="key2"
    ...
}
Run Code Online (Sandbox Code Playgroud)

静态参数在项目中重复使用.重构时,我想将它们移到另一个类,比如说Class B; 但这样做我必须更新他们的每一个使用案例,如A.KEY_1B.KEY_2手动.

有没有办法在Android Studio或IntelliJ中自动执行此操作?我已经尝试过的是选择包含参数的行并按F6打开一个重构对话框,但是通过它不会让我得到我想要的.

java refactoring android intellij-idea

8
推荐指数
1
解决办法
1354
查看次数

处理android中单个类的权限

为了处理android M +中的权限,我想编写一个单独的类,即PermissionHandler类,来处理所有与权限相关的工作,这样我就可以轻松地在任何项目中使用相同的类,而无需通过仅调用它来更改调用活动.构造函数:

           new PermissionHandler(CallingActivity.this, Manifest.permission.READ_EXTERNAL_STORAGE, new PermissionHandler.PermissionGranted() {
                @Override
                public void onPermissionGranted() {
                    doWhatever();
                }
            });
Run Code Online (Sandbox Code Playgroud)

我的PermissionHandler是:

public class PermissionHandler implements ActivityCompat.OnRequestPermissionsResultCallback{
.
.
.
public PermissionHandler(AppCompatActivity callingActivity, String permission, PermissionGranted permissionGranted) {
        this.permission = permission;
        this.permissionGranted = permissionGranted;
        this.callingActivity= callingActivity;
        askForPermission();

}

private void askForPermission() {

            if (ContextCompat.checkSelfPermission(context, permission) != PackageManager.PERMISSION_GRANTED) {
                if (ActivityCompat.shouldShowRequestPermissionRationale(activity, permission)) {
                    showAlertDialog();
                } else {
                    ActivityCompat.requestPermissions(callingActivity,permissionsArray, PERMISSION_REQUEST);
                }
            } else {
                permissionGranted.onPermissionGranted();
            }
}

    @Override
public void onRequestPermissionsResult(int requestCode, @NonNull String[] permissions, @NonNull …
Run Code Online (Sandbox Code Playgroud)

java android

5
推荐指数
1
解决办法
2791
查看次数

标签 统计

android ×2

java ×2

intellij-idea ×1

refactoring ×1