1.
范例说明
- 在学会了一系列与TextView文字相关的范例与简单的按钮事件后,现在让我们把这两个对象做一个简单的整合。
- 本范例将通过按钮的setOnClickListener与onClick方法的方式,在单击按钮后,触发setTextColor方法来变换文字颜色,但仅是变换颜色显得太无趣,所以在此创建一个自定义的颜色数组(mColors),单击按钮时,会根据数组元素的索引值的递增变化来置换TextView的文字颜色。
2.
运行结果
![](https://img-my.csdn.net/uploads/201210/26/1351180935_8671.png)
3.
编写代码
package com.eyeandroid.buttontext;
import android.app.Activity;
import android.graphics.Color;
import android.os.Bundle;
import android.view.View;
import android.widget.Button;
import android.widget.TextView;
public class MainActivity extends Activity {
private Button mButton;
private TextView mText;
private int[] mColors;
private int colornum;
@Override
public void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.main);
mButton = (Button) findViewById(R.id.mybutton);
mText = (TextView) findViewById(R.id.mytext);
mColors = new int[] { Color.BLACK, Color.RED, Color.BLUE, Color.GREEN,
Color.MAGENTA, Color.YELLOW };
colornum = 0;
mButton.setOnClickListener(new View.OnClickListener() {
public void onClick(View v) {
if (colornum < mColors.length) {
mText.setTextColor(mColors[colornum]);
colornum++;
} else
colornum = 0;
}
});
}
}
4.
扩展学习与作业
建议使用getResources().getColor(R.drawable.lightgray),方式来引用定义在XML中的颜色。
作业:请用自定义的颜色来实现按钮点击,文本颜色变化功能