2010-12-02 4 views
0

Я скопировал этот код с учебного сайта, потому что я пытаюсь его изучить. Но я получаю сообщение об ошибке приОшибка значка Android

package com.android.test; 
import android.R; 
import android.app.Activity; 
import android.graphics.Bitmap; 
import android.graphics.BitmapFactory; 
import android.graphics.Matrix; 
import android.graphics.drawable.BitmapDrawable; 
import android.os.Bundle; 
import android.view.View; 
import android.widget.AdapterView; 
import android.widget.ArrayAdapter; 
import android.widget.ImageView; 
import android.widget.SeekBar; 
import android.widget.Spinner; 
import android.view.ViewGroup.LayoutParams; 
import android.widget.LinearLayout; 
import android.widget.ImageView.ScaleType; 
public class Rotate extends Activity { 
    @Override 
    public void onCreate(Bundle savedInstanceState) { 
     super.onCreate(savedInstanceState); 
     LinearLayout linearLayout = new LinearLayout(this); 

    Bitmap bitmap = BitmapFactory.decodeResource(getResources(), R.drawable.icon); 

На этой последней строке, я получаю сообщение об ошибке, где «.Icon» написано. В нем говорится: «Значок не может быть разрешен или не является полем».

int width = bitmap.getWidth(); int height = bitmap.getHeight();

Matrix matrix = new Matrix(); 
    matrix.postRotate(90); 

    Bitmap rotatedBitmap = Bitmap.createBitmap(bitmap, 0, 0, 

ширина, высота , матрица, правда); BitmapDrawable bmd = new BitmapDrawable (rotatedBitmap);

ImageView imageView = new ImageView(this); 
    imageView.setImageDrawable(bmd); 
    imageView.setScaleType(ScaleType.CENTER); 

    linearLayout.addView(imageView, new LinearLayout.LayoutParams(
    LayoutParams.FILL_PARENT, LayoutParams.FILL_PARENT)); 
    setContentView(linearLayout); 
    } 
} 

ответ

0

Вы должны скопировать файл под названием icon.png в каталог res/drawable.

7

В ваших import высказываниях Вы

import android.R; 

Это означает, что она будет выглядеть в течение android.R.drawable.icon, rathern чем R.drawable.icon. android.R содержит идентификаторы всех активов из SDK. Чтобы получить доступ к своим собственным активам, вам нужно удалить инструкцию using или написать вручную com.your.package.name.R.drawable.icon

1

Это очень вероятно, потому что у вас нет изображения в папке/res/drawable, названной icon.png/icon.bmp/icon.jpg

Итак, скопируйте изображение, вероятно, на сайт в эту папку, и все должно быть хорошо.

6

Значок несколько раз работает, а иногда это не так. Измените его на 'ic_launcher'. Это работает все время. Это имя файла, найденное в разделе «res/drawable-? Dpi». Это значок, который появляется на устройстве Android.

НЕТ: .setIcon (R.drawable.ic_launcher)

Смежные вопросы