marco selector de color de Android
Recomiendo crear un nuevo proyecto o Moudle para probar primero.
Prefacio
Para ser honesto, al principio no entendía cómo usar este marco. Después de descargar y ver el código fuente del autor, sabía cómo usarlo. No digas tonterías, solo ve al tema, echemos un vistazo al efecto.
Paso 1: importar dependencias
Si desea conocer el código fuente y cómo implementar la función, puede ir a la dirección fuente .
Las dependencias de importación son las siguientes:
implementation'com.github.kizitonwose.colorpreference:core:1.1.0'
Paso 2: el código principal
Para la conveniencia de la demostración, el código está simplificado y el código es el siguiente:
Primero de todo: para heredar el método ColorDialog.OnColorSelectedListener, como se muestra en la figura: el
código es el siguiente:
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);
}
}
}
El código principal es el anterior y el tipo de selección de color se adjunta a continuación:
<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>
Ubicación:
finalmente, echemos un vistazo al efecto simple:
si hay algo más que no entiende, puede mirar el código fuente, descargarlo usted mismo y configurarlo en 0 puntos (CSDN ahora puede configurar 0 puntos sin crecimiento automático o es muy fácil de usar), la dirección del código fuente Como sigue: la
dirección del código fuente es la siguiente