我正在使用textView,设置其背景颜色,但是一旦删除文本,它就会缩小为零,因此无法看到。
是否有一个控件可以用来简单地显示方形调色板?
我的2个颜色方块 - 我想向用户显示从颜色选择器中挑选的当前颜色....
<TextView
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:textAppearance="@android:style/TextAppearance.Medium"
android:id="@+id/textView_primaryColor"
android:hint="Set Primary Color: Tap here"
android:textColor="@color/white"
android:layout_weight="1" />
<TextView
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:textAppearance="@android:style/TextAppearance.Medium"
android:id="@+id/textView_secondaryColor"
android:hint="Set Secondary Color: Tap here"
android:textColor="@color/white"
android:layout_weight="1" />
</LinearLayout>
public void choosePrimaryColor(final Context context, int defaultColor) {
AmbilWarnaDialog dialogColor = new AmbilWarnaDialog(context, defaultColor, new AmbilWarnaDialog.OnAmbilWarnaListener() {
@Override
public void onOk(AmbilWarnaDialog dialog, int color) {
textView_primaryColor.setBackgroundColor(color);
textView_primaryColor.setHint("");
primaryColorChosen = "#"+Integer.toHexString(color);
Toast.makeText(context, "ok", Toast.LENGTH_SHORT).show();
}
@Override
public void onCancel(AmbilWarnaDialog dialog) {
Toast.makeText(context, "cancel", Toast.LENGTH_SHORT).show();
}
});
dialogColor.show();
}
public void chooseSecondaryColor(final Context context, int defaultColor) {
final AmbilWarnaDialog dialogColor = new AmbilWarnaDialog(context, defaultColor, new AmbilWarnaDialog.OnAmbilWarnaListener() {
@Override
public void onOk(AmbilWarnaDialog dialog, int color) {
textView_secondaryColor.setBackgroundColor(color);
textView_secondaryColor.setHint("");
secondaryColorChosen = "#"+Integer.toHexString(color);
Toast.makeText(context, "ok", Toast.LENGTH_SHORT).show();
}
@Override
public void onCancel(AmbilWarnaDialog dialog) {
Toast.makeText(context, "cancel", Toast.LENGTH_SHORT).show();
}
});
dialogColor.show();
}
答案 0 :(得分:0)
在看到您的评论时,我认为您的目的是向用户显示他从颜色选择器中选择的颜色。
为此,我的建议是添加一个新的布局(线性或相对),然后将用户选择的颜色设置为刚刚创建的新布局的背景。
将此添加到您的xml
long
然后在您的活动中添加
<LinearLayout
android:id="@+id/layout_primaryColor"
android:layout_height="100dp"
android:layout_width="100dp"/>
现在,要设置背景颜色,请添加
LinearLayout primaryColorLayout = (LinearLayout) findViewById(R.id.layout_primaryColor);