我的申请有问题。基本上它的作用是,当我点击一个按钮时,它会在scrollView上创建3个字段(2个editText和1个微调器)。事情很好,我唯一的问题,与风格有关,活动bgColor是白色的(作为应用程序的其余部分)但是,当我以编程方式创建元素时,这些元素没有我的其余部分的外观应用程序。 editTexts是白色的,带有白色字母(由于我的bgColor也是白色的,因此无法读取)与旋转器相同。我能做什么?这是一段代码,所以你可以看到我在这做什么。
public class AddIngredients extends Activity {
public int Count = 0;
public String[] spinnerArray = {"Gr", "kg", "Cups", "ml", "L", "oz"};
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.addingredients);
final TableLayout lm = (TableLayout) findViewById(R.id.TableMain);
TableLayout.LayoutParams params = new TableLayout.LayoutParams(
LayoutParams.WRAP_CONTENT, LayoutParams.WRAP_CONTENT);
Button addMore = (Button)findViewById(R.id.addmore);
addMore.setOnClickListener(new OnClickListener() {
@Override
public void onClick(View v) {
TableRow ll = new TableRow(getApplicationContext());
//ll.setOrientation(LinearLayout.HORIZONTAL);
EditText product = new EditText(getApplicationContext());
product.setHint(" Ingredient "+Count +" ");
// Create Button
EditText amount = new EditText(getApplicationContext());
// Give button an ID
amount.setId(Count);
amount.setHint("Quantity");
final Button btn2 = new Button(getApplicationContext());
btn2.setId(Count);
btn2.setText("Remove " + Count);
Spinner spinner = new Spinner(getApplicationContext());
ArrayAdapter<String> spinnerArrayAdapter = new ArrayAdapter<String>(getApplicationContext(), android.R.layout.simple_spinner_dropdown_item, spinnerArray);
spinner.setAdapter(spinnerArrayAdapter);
ll.addView(product);
ll.addView(amount);
ll.addView(spinner);
lm.addView(ll);
Count = Count + 1;
我知道我的XML运行良好,因为如果我在xml上创建3个视图,它们看起来很棒。 PD:请提前获取任何帮助!问候。
答案 0 :(得分:1)
你可以使用
amount.setTextColor(Color.BLACK);
将文字颜色设置为黑色或任何其他颜色
同样可以用于微调器
答案 1 :(得分:1)
这是我如何设置编辑文本行和其他与主题相关的android视图的颜色。
http://android-holo-colors.com/
我刚刚选择了我想要的颜色和视图,然后在我的res文件夹中解压缩它们,然后根据android教程设置主题。
我建议您首先备份您的资源文件夹,以防您不喜欢结果。
阁楼
答案 2 :(得分:0)
我的代码出错了。在创建字段时,我正在使用
(getApplicationContext());
。我使用MyApplicationName.this
修复了它。