1

我正在以编程方式在LinearLayout上生成TextView,我想在触摸 LinearLayout 时 显示以编程方式生成的具有Holo 效果的 TextView

for (int i = 1; i <= 10; i++)  {
  LinearLayout linLayout= (LinearLayout) findViewById(R.id.sideIndex);
  TextView tv = new TextView(this);
  tv.setTextColor(getResources().getColor(R.color.white));
// tmpTV.setTypeface(font);
  tv.setText(tmpLetter);
  tv.setGravity(Gravity.CENTER);
  tv.setTextSize(11); 
  tv.setTextColor(getResources().getColor(R.color.holo_green_light));

 LayoutParams params = new LayoutParams(LayoutParams.WRAP_CONTENT,
 LayoutParams.WRAP_CONTENT,2);

 tv.setLayoutParams(params);

 linLayout.addView(tv);
}

我可以用这个查看 Holo TextViews

tv.setTextColor(getResources().getColor(R.color.holo_green_light));

但是我想在LinearLayout上ontouch后查看TextView上的全息效果。

下面的代码对于以编程方式生成的 TextView 的单个实例工作正常,但是在用户触摸 LinearLayout 后,我​​需要在 Holo 中显示多个文本视图!

  linLayout.setOnTouchListener(new OnTouchListener()
    {
        public boolean onTouch(View v, MotionEvent event)
        {
           tv.setTextColor(getResources().getColor(R.color.holo_blue_bright));
            return false;
        }
    });
4

1 回答 1

1

我想您应该设置全息背景选择器,以便您的文本视图响应选择/按下/聚焦状态。不知道选择器在全息主题中的确切位置或它的命名方式,但应该就是这样。

于 2012-12-15T16:42:11.640 回答