我正在尝试在android中开发自定义软键盘,当我按下键时我想要改变键的输出文本颜色,我的想法是通过这个代码使make类扩展键:
public class k extends Key{
private Paint mTextPaint;
public k(Resources arg0, Row arg1, int arg2, int arg3,XmlResourceParser arg4) {
super(arg0, arg1, arg2, arg3, arg4);
initLabelView();
AttributeSet attributes = Xml.asAttributeSet(arg4);
TypedArray a =arg0.obtainAttributes(attributes, R.styleable.LabelView);
setTextColor(a.getColor(R.styleable.LabelView_textColor, 0xFF000000));
a.recycle();
initLabelView();
}
private final void initLabelView() {
mTextPaint = new Paint();
mTextPaint.setAntiAlias(true);
mTextPaint.setTextSize(16);
mTextPaint.setColor(0xFF000000);
}
public void setTextColor(int color) {
mTextPaint.setColor(color);
}
}
并在值文件夹中设置attrs xml文件(如自定义视图)
在xml文件夹中我用键盘创建了xml文件,用这个代码组成行和键:
<Keyboard xmlns:android="http://schemas.android.com/apk/res/android" android:keyWidth="14.28%p"
xmlns:app="http://schemas.android.com/apk/res/com.szlosek.keying"
android:horizontalGap="0px" android:verticalGap="0px" android:keyHeight="@dimen/key_height">
<Row>
<Key android:codes="121"
android:textColor="#26E80C"
android:keyLabel="d"/>
<com.szlosek.keying.k
android:layout_width="fill_parent"
android:layout_height="wrap_content"
android:codes="117"
app:textColor="#26E80C"
android:keyLabel="u" />
-->
</Row>
</Keyboard>
我的问题是我定制的关键(它有标签)没有出现在键盘上而另一个出现(如已标记) 请任何人帮助我并编辑我的代码 感谢