我正在创建一个复合视图。 我为我的新视图创建了一个类:
import android.R;
public class LogoAndTextButton extends LinearLayout{
public LogoAndTextButton(Context context, AttributeSet attrs) {
super(context, attrs);
setOrientation(VERTICAL);
TypedArray array = context.obtainStyledAttributes(attrs, R. , 0, 0);
我在res / values中创建了一个attrs.xml:
<?xml version="1.0" encoding="utf-8"?>
<resources>
<declare-styleable name="LogoAndTextButton">
<attr name="image" format="reference"/>
<attr name="text" format="string"/>
</declare-styleable>
</resources>
样式显示在我的R.java文件中!!!
public static final class style {
public static final int AppBaseTheme=0x7f080000;
public static final int AppTheme=0x7f080001;
}
public static final class styleable {
public static final int[] LogoAndTextButton = {
0x7f010000, 0x7f010001
};
public static final int LogoAndTextButton_image = 0;
public static final int LogoAndTextButton_text = 1;
};
但是当我转到我的LogoAndTextButton java类文件并输入“R”时和cntrl + space,“styleable”不会显示为其中一个元素。如果我手动输入它会抱怨它无法解决。我已经尝试清理我的项目,关闭并重新开启日食。
答案 0 :(得分:1)
问题出在源文件的顶部
import android.R;
您正在导入Android资源,因此它看不到您的资源。删除该行,然后重试。
答案 1 :(得分:0)
出于某种原因我导入了android.R