我建议在先自己先新建一个项目或者Moudle用于测试。
前言
说实话开始我也没怎么看懂这个框架怎么使用,在下载了查看了作者的源码之后才知道怎么使用它,废话不多说,直接步入正题,先看一下效果吧。
第一步:导入依赖
如果想了解源码和功能怎么实现的可以去源码地址。
导入依赖如下:
implementation'com.github.kizitonwose.colorpreference:core:1.1.0'
第二步:主要代码
为了演示方便,代码一切从简,代码如下:
首先:要继承ColorDialog.OnColorSelectedListener方法,如图所示:
代码如下:
import android.annotation.SuppressLint;
import android.os.Bundle;
import android.view.View;
import android.widget.Button;
import androidx.appcompat.app.AppCompatActivity;
import com.kizitonwose.colorpreference.ColorDialog;
import com.kizitonwose.colorpreference.ColorShape;
public class MainActivity extends AppCompatActivity implements ColorDialog.OnColorSelectedListener {
private Button button;
@SuppressLint("ResourceType")
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_main);
button=findViewById(R.id.button);
}
public void colorShare(View view){
new ColorDialog.Builder(this)
.setColorShape(ColorShape.SQUARE) //SQUARE 正方形 CIRCLE圆形
.setColorChoices(R.array.color_choices) //自定义颜色
.setNumColumns(5) //设置每行颜色选择的个数
.setTag("TAG") //与下方的onColorSelected方法想呼应
.show();
}
@Override
public void onColorSelected(int newColor, String tag) {
if(tag=="TAG"){
button.setBackgroundColor(newColor);
}
}
}
主要代码如上,下面附上颜色的选择种类:
<string-array name="color_choices">
<item>#f44336</item>
<item>#e91e63</item>
<item>#9c27b0</item>
<item>#673ab7</item>
<item>#3f51b5</item>
<item>#2196f3</item>
<item>#03a9f4</item>
<item>#00bcd4</item>
<item>#009688</item>
<item>#4caf50</item>
<item>#8bc34a</item>
<item>#cddc39</item>
<item>#ffeb3b</item>
<item>#ffc107</item>
<item>#ff9800</item>
<item>#ff5722</item>
<item>#795548</item>
<item>#9e9e9e</item>
<item>#607d8b</item>
</string-array>
摆放位置:
最后我们看一下简单的效果吧:
如果还有什么不明白可以看一下源码,自行下载,设置为0积分(CSDN现在可以设置0积分不自动增长还是很人性化的),源码地址如下:
源码地址如下