2010-07-22 3 views
3

На самом деле у меня есть 52 изображения, которые в основном являются карточками. изображения имена от 1 до 52.android Проблема с изображением

, когда я положил все 52 изображения в моей вытяжке папке, то она показывает ошибку в R.java файла, который:

Синтаксическая ошибка на лексемы «Имя изображения (любой между от 1 до 52)», недействительны VariableDeclaratorId

чем проблема?


благодарит за ответить.

Я думаю, что у меня не было проблемы.

Я дал имя своим картам от 1 до 52, потому что мне нужно случайно выбрать одну карту из нее.

ответ

1

Имена ресурсов должны быть правильными идентификаторами Java. Назовите их card1 через card52 вместо их числа (если я вас правильно понимаю).

EDITED TO ADD: Чтобы сопоставить целое число с правильным изображением, ваш код должен управлять самим отображением. Один (не очень элегантный) способ состоит в том, чтобы явно создать массив Bitmap[] cardImages = new Bitmap[52]; и назначить каждый ресурс в массив, как, например,

Resources r = context.getResources(); 
cardImages[0] = loadBitmap(r.getDrawable(R.drawable.card1)); 
// ... 
cardImages[12] = loadBitmap(r.getDrawable(R.drawable.card13)); 
// ...  
cardImages[51] = loadBitmap(r.getDrawable(R.drawable.card52)); 
1

Проблема заключается в том, что Android не позволяет использовать пробелы в идентификатор файла

+0

то что такое разрежение? –

+0

решение состоит в том, чтобы не использовать пробелы – 2010-07-22 12:09:42

+0

В его именах переменных нет пробелов. – Janusz

1

Понт Gagge является правильным. Android примет имя всего в папке с возможностью рисования и попытается сгенерировать R-файл, содержащий int для каждого изображения, которое вы используете в своем приложении. Имена названий названы после имен файлов ваших чертежей. Затем вы можете использовать этот ints как ids для загрузки изображений из вашего приложения.

Проблема заключается в том, что Java does not allow имя vairable для начала с номера. Ваши изображения начинаются с числа, поэтому ваши переменные в файле R начинаются с числа. Вы должны выбрать другое имя для своих изображений.

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