0

エラー-市場を解決できないか、フィールドではありません。ニュースを解決できないか、フィールドではありません。天気を解決できないか、フィールドではありません。

GridViewで例を試しています。Market、News、Weatherという名前の画像をres >>drawable-mdpi>>フォルダーに追加しました。しかし、Eclipseはそれを認識できません。画像は* jpeg*形式です。何が悪いのでしょうか?手伝ってもらえますか?ここにコードを投稿しています

public class MainActivity extends Activity 
{
    // Images to display-----------------------//
    Integer[] imageIds = {
            R.drawable.Market,
            R.drawable.News,
            R.drawable.Weather
    };
    /** Called when the activity is first created. */
    @Override
    public void onCreate(Bundle savedInstanceState) 
    {
        super.onCreate(savedInstanceState);
        setContentView(R.layout.main);

        GridView gridView = (GridView) findViewById(R.id.gridview);// Bring gridView into context from main.xml
        gridView.setAdapter(new ImageAdapter(this)); 

        gridView.setOnItemClickListener(new OnItemClickListener()
        {
        public void onItemClick(AdapterView<?> parent,
        View v, int position, long id)
        {
            Toast.makeText(getBaseContext(), "pic " + (position + 1) + " selected",        Toast.LENGTH_SHORT).show();
        }
        });
     }

    public class ImageAdapter extends BaseAdapter
    {
        private Context context; // Context class object - context

        public ImageAdapter(Context c)
        {
            context = c;
        }

        //return number of images
        public int getCount()
        {
            return imageIds.length;
        }

        public Object getItem(int position)     // return type of getItem method is an Object
        {
            return position;
        }

        public long getItemId(int position)
        {
            return position;
        }

        //returns an ImageView view--------------
        public View getView(int position, View convertView, ViewGroup parent)
        {
            ImageView imageView;
            if(convertView == null)
            {
                imageView = new ImageView(context);
                imageView.setLayoutParams(new GridView.LayoutParams(85, 85));
                imageView.setScaleType(ImageView.ScaleType.CENTER_CROP);
                imageView.setPadding(5, 5, 5, 5);
            }
            else
            {
                imageView = (ImageView) convertView;
            }
            imageView.setImageResource(imageIds[position]);
            return imageView;
        }       
    }    
}
4

3 に答える 3

0

drawable-mdpiWeather(に配置された画像)という名前のリソースを作成してみましたが、

res \ drawable-mdpi \ Weather.jpg:無効なファイル名:[a-z0-9_]のみを含める必要があります

Eclipseで。リソース名は制限によりスネークスタイルにする必要があると思いましたが、キャメルケースも大丈夫だと男が言っているこのスレッドを見つけました。これは、唯一の制限が最初の文字の大文字を持たないことであることを意味します。

于 2012-04-01T15:44:04.880 に答える
0

//小さなキャップはありません

描画可能な画像を小文字に変更します

androidはaz、0-9、_をサポートします

于 2012-04-01T15:44:56.230 に答える
0

コードで以下の行を置き換えます

Integer [] imageIds = {R.drawable.Market、R.drawable.News、R.drawable.Weather};

Integer [] imageIds = {R.drawable.market、R.drawable.news、R.drawable.weather};

また、ドローアブルフォルダ内の画像名を変更します。

于 2012-04-01T15:47:43.133 に答える