0

我有一个按钮,我在我实现的仪表板模式中动态插入。在 onCreate 方法中,我创建了我的按钮并插入我的仪表板(名为MainMenu):

Drawable dr = getResources().getDrawable(R.drawable.my_drawable);
Rect rect = new Rect();
rect.set(0, 0, dr.getIntrinsicWidth(), dr.getIntrinsicHeight());
dr.setBounds(rect);
button = new ImageButton(this);
int id = getResources().getIdentifier("home_button", "style", getPackageName());
button.setId(i+1);
mainMenu.addView(button);

这是我在 styles.xml 中的风格:

 <style name="home_button">
    <item name="android:layout_gravity">center_vertical</item>
    <item name="android:layout_width">100dip</item>
    <item name="android:layout_height">100dip</item>
    <item name="android:gravity">center_horizontal</item>
    <item name="android:drawablePadding">2dp</item>
    <item name="android:textSize">16dp</item>
    <item name="android:text">"Some Text"</item>
    <item name="android:textStyle">bold</item>
    <item name="android:textColor">#ff29549f</item>
</style>

当我从 getIdentifier 获取样式时,会引发 Resources.NotFoundException。消息是:

请求资源 0x7f060000 失败,因为它很复杂

而且我的按钮没有出现。对不起,如果我扩展了自己,但有人知道发生了什么吗?

4

0 回答 0