Android 如何动态更改图案锁定视图组可绘制图像?

Android 如何动态更改图案锁定视图组可绘制图像?,android,android-view,Android,Android View,目前我正在开发一个模式锁定应用程序,在该应用程序中,我从视图组扩展了模式视图,这意味着它可以显示模式锁定视图,我使用可绘制的png图像来显示模式视图 因此,实际上,当用户在另一个GridView中选择该图像并将其显示在模式视图上时,我想动态更改该模式锁定png图像 基本上,我只想更改模式锁定主题。 这是我的模式锁视图xml <com.v1.sensoft.halloweenlock.utils.Lock9View android:id="@+id/lock_9_view"

目前我正在开发一个模式锁定应用程序,在该应用程序中,我从
视图组
扩展了模式
视图
,这意味着它可以显示模式锁定
视图
,我使用可绘制的png图像来显示模式
视图

因此,实际上,当用户在另一个
GridView
中选择该图像并将其显示在模式
视图上时,我想动态更改该模式锁定png图像

基本上,我只想更改模式锁定主题。

这是我的模式锁视图xml

    <com.v1.sensoft.halloweenlock.utils.Lock9View
    android:id="@+id/lock_9_view"
    android:layout_width="match_parent"
    android:layout_height="wrap_content"
    app:nodeSrc="@mipmap/ppo"
    app:nodeOnSrc="@mipmap/ppn"
    android:layout_gravity="center"
    app:lineColor="#FFCC00"
    app:lineWidth="8dp" />
活动

prefs = getSharedPreferences(MY_PREFS_NAME, MODE_PRIVATE);
    lock9View = (Lock9View) findViewById(R.id.lock_9_view);

    lock9View.setCallBack(new Lock9View.CallBack() {

        public int counter = 0;
        public int buttCounter = 0;

        @Override
        public void onFinish(String password) {
            PATTERN_KEY = prefs.getString("Pattern", "invalid");
                Log.i("Counter","..."+counter);
                if (PATTERN_KEY.equals("invalid")) {
                    Toast.makeText(MainActivity.this, "Options --> Create new Pattern", Toast.LENGTH_LONG).show();
                } else {
                    if (password.equals(PATTERN_KEY)) {
                        Intent startMain = new Intent(Intent.ACTION_MAIN);
                        startMain.addCategory(Intent.CATEGORY_HOME);
                        startMain.setFlags(Intent.FLAG_ACTIVITY_NEW_TASK);
                        startActivity(startMain);

                    } else {
                        invalidPattern();
                        Toast.makeText(MainActivity.this, "Please try again..." +failedCount, Toast.LENGTH_LONG).show();
                    }
                }
            }
    });
}

因此,如果有人知道,请给出一些想法。

嗨,vishal patel,请检查我的编辑-一切正常吗?是的,你知道我问题的答案吗?我不确定我是否理解这个问题:你是否只需要一种在自定义视图中设置位图的方法,还是你也在寻找一种让用户选择图片等的方法?实际上我有gridview,在gridview中我有一些图像。所以,当用户从gridview中选择特定图像并将当前图像替换为图案锁定视图上的gridview选定图像时。我可以发布图案锁定屏幕的主要布局以更好地理解吗?嗨,vishal patel,请检查我的编辑-一切正常?是的,你知道我问题的答案吗?我不确定我是否理解这个问题:你是否只需要一种在自定义视图中设置位图的方法,还是你也在寻找一种让用户选择图片等的方法?实际上我有gridview,在gridview中我有一些图像。所以,当用户从gridview中选择特定图像并将当前图像替换为图案锁定视图中的gridview选定图像时。我可以发布图案锁定屏幕的主要布局以更好地理解吗??
prefs = getSharedPreferences(MY_PREFS_NAME, MODE_PRIVATE);
    lock9View = (Lock9View) findViewById(R.id.lock_9_view);

    lock9View.setCallBack(new Lock9View.CallBack() {

        public int counter = 0;
        public int buttCounter = 0;

        @Override
        public void onFinish(String password) {
            PATTERN_KEY = prefs.getString("Pattern", "invalid");
                Log.i("Counter","..."+counter);
                if (PATTERN_KEY.equals("invalid")) {
                    Toast.makeText(MainActivity.this, "Options --> Create new Pattern", Toast.LENGTH_LONG).show();
                } else {
                    if (password.equals(PATTERN_KEY)) {
                        Intent startMain = new Intent(Intent.ACTION_MAIN);
                        startMain.addCategory(Intent.CATEGORY_HOME);
                        startMain.setFlags(Intent.FLAG_ACTIVITY_NEW_TASK);
                        startActivity(startMain);

                    } else {
                        invalidPattern();
                        Toast.makeText(MainActivity.this, "Please try again..." +failedCount, Toast.LENGTH_LONG).show();
                    }
                }
            }
    });
}