Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/java/380.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Java 在片段中使用android颜色选择器?_Java_Android_Color Picker - Fatal编程技术网

Java 在片段中使用android颜色选择器?

Java 在片段中使用android颜色选择器?,java,android,color-picker,Java,Android,Color Picker,我对android开发相当陌生,希望在片段中使用android-Color_选择器“AmbilWarna”。我得到一个错误: The constructor AmbilWarnaDialog(HomeFragment, int, new OnAmbilWarnaListener(){}) is undefined. 这是因为我使用的是片段而不是片段活动吗?我使用的教程使用的是活动 我正在使用以下教程: 使用以下命令: AmbilWarnaDialog dialog = new AmbilWa

我对android开发相当陌生,希望在片段中使用android-Color_选择器“AmbilWarna”。我得到一个错误:

The constructor AmbilWarnaDialog(HomeFragment, int, new OnAmbilWarnaListener(){}) is undefined.
这是因为我使用的是片段而不是片段活动吗?我使用的教程使用的是活动

我正在使用以下教程:

使用以下命令:

AmbilWarnaDialog dialog = new AmbilWarnaDialog(getActivity().getApplicationContext(), 0xff0000ff, new OnAmbilWarnaListener() {

    // Executes, when user click Cancel button
    @Override
    public void onCancel(AmbilWarnaDialog dialog){
    }

    // Executes, when user click OK button
    @Override
    public void onOk(AmbilWarnaDialog dialog, int color) {
        Toast.makeText(getBaseContext(), "Selected Color : " + color, Toast.LENGTH_LONG).show();
    }
});

因此,您必须使用
getActivity().getApplicationContext()
而不是
this
。它将与上下文一起返回。

如果您想要颜色选择器的片段解决方案,我已经制作了一个android颜色选择器的分支,其中使用了对话框片段,并在配置更改时重新创建。下面是链接:

我这样做了,但是得到了这个错误:构造函数AmbilWarnaDialog(FragmentActivity,int,new OnAmbilWarnaListener(){})是未定义的,请稍等,我会找到solution@BenFossen请参阅我的编辑,尝试getActivity().getApplicationContext()命令
AmbilWarnaDialog dialog = new AmbilWarnaDialog(getActivity().getApplicationContext(), 0xff0000ff, new OnAmbilWarnaListener() {

    // Executes, when user click Cancel button
    @Override
    public void onCancel(AmbilWarnaDialog dialog){
    }

    // Executes, when user click OK button
    @Override
    public void onOk(AmbilWarnaDialog dialog, int color) {
        Toast.makeText(getBaseContext(), "Selected Color : " + color, Toast.LENGTH_LONG).show();
    }
});