5

本のコードが間違っていると思いました。私の自宅の場所で試してみましたが、うまくいきました。私の日食が実際に壊れていることがわかりました。日食を削除して再インストールする必要がありました。

これは私の最初の投稿なので、ルールのいくつかに従わなかった場合はお知らせください. 検索しようとしたところ、同じエラーの投稿がいくつか見つかりましたが、それらは文字列を扱っていました。私は絶対初心者向けの Android アプリ (第 2 版) に従っています。179 ページでは、button1.xml を res/drawable に取り込みます。layout/activity_main.xml に入って入力すると

<ImageButton 
    android:id="@+id/button_one"
    android:layout_width="wrap_content"
    android:layout_height="wrap_content"
    android:src="@drawable/button1"
    android:contentDescription="@string/app_name"/>

android:src 「エラー: エラー: 指定された名前に一致するリソースが見つかりません (値 '@drawable/button1' の 'src' で)」というエラーが表示されます。

今、私を混乱させることがいくつかあります。私はEclipseを使用しており、4つのドローアブルフォルダー(drawable-hdpi、drawable-ldpi、drawable-mdpi、およびdrawable-xhdpi)を持っています。 4 つの drawable フォルダーを作成し、button1_focused.png、button1_pressed.png、および button1_normal.png をそれぞれの解像度でインポートしました。また、各フォルダーに button1.xml を配置しました。

button1.xml は次のとおりです。

<selector xmlns:android="http://schemas.android.com/apk/res/android">
    <item android:state_pressed="true"
            android:drawable="@drawable/button1_pressed" />
    <item android:state_focused="true"
            android:drawable="@drawable/button1_focused" />
    <item android:drawable="@drawable/button1_normal" />
</selector>

私は android:src の代わりに android:background を試しましたが、それもエラーになります。src (またはバックグラウンド) にファイルがないというエラーが表示されていることがわかります。何をそこに置くべきかわからないだけです。

Java コード パッケージ com.example.ui_designs;

import android.os.Bundle;
import android.app.Activity;
import android.view.Menu;

public class MainActivity extends Activity {

@Override
protected void onCreate(Bundle savedInstanceState) {
    super.onCreate(savedInstanceState);
    setContentView(R.layout.activity_main);
}

@Override
public boolean onCreateOptionsMenu(Menu menu) {
    // Inflate the menu; this adds items to the action bar if it is present.
    getMenuInflater().inflate(R.menu.activity_main, menu);
    return true;
}

ImageButton imageButton = new ImageButton(context);
imageButton.setImageResource(R.drawable.button1);

}

スクリーンショットへのリンク: http://s7.postimage.org/3v4tu9ifv/UI_Designs.png

4

7 に答える 7

2

本のコードが間違っていると思いました。私の自宅の場所で試してみましたが、うまくいきました。私の日食が実際に壊れていることがわかりました。日食を削除して再インストールする必要がありました。

ご迷惑をおかけしましたことをお詫び申し上げます。コミュニティの皆様のご協力に感謝いたします。

于 2013-01-31T18:26:08.823 に答える
1

button1.xmlProject Explorer のスクリーンショットによると、drawable-hdpiフォルダにがありません。

drawable同じ画像サイズをすべて使用したい場合は、密度は関係ありません。すべての画面密度を処理するだけの名前の新しいフォルダーを作成できます。

于 2013-01-30T21:12:48.353 に答える
0

プロジェクトをリバース エンジニアリングしているときに、「エラー: エラー: 指定された名前に一致するリソースが見つかりませんでした ('background' で値 '@color/default_bg')。」

解決策: 次の属性を「/project_/res/values/colors.xml」に追加しました。

<color name="default_bg">#aa000000</color>

最後に、これが気に入ったように見えました:

<resources>
  <color name="black_overlay">#66000000</color>
   <color name="default_bg">#aa000000</color>
</resources>
于 2015-02-24T08:18:40.017 に答える
0

私はこれを AndroidStudio で発生させましたが、ファイルの名前は .png でしたが、jpeg であることが判明しました。

于 2016-09-16T02:10:11.497 に答える
0

あなたのJavaコードでこれをやってみてもらえますか?

ImageButton imageButton = new ImageButton(context);
imageButton.setImageResource(R.drawable.button1);
于 2013-01-30T20:30:24.467 に答える