2014-12-12 3 views
-1

Возможно ли, чтобы параметры метода в android были значением для R.raw.parametervalue, например;Параметры метода в android

public void sound(SOMETHING sound){ 

m = MediaPlayer.create(getApplicationContext(), R.raw.sound); 

} 
+0

да это возможно, поскольку R.raw.sound является int. Таким образом, ваша подпись метода будет иметь (контекстный контекст, Int soundId) – Darpan

+0

@Darpan, вы должны опубликовать его как ответ, это правильно ... – Opiatefuchs

+0

это говорит, что звук не может быть разрешен или не поле – Android

ответ

3

да можно, так как R.raw.sound является int. Таким образом, ваш метод подпись будет иметь

(Context context, Int soundID)

Для звука не получают признания, необходимо создать звуковой файл в «сырой» папке, эта проблема упоминается здесь - Check this one out

+0

Я создал сырую папку со звуками – Android

+0

сделал это тогда? – Darpan

+0

У меня уже была исходная папка, но теперь она работает. – Android

2

использовать его:

public void sound(int soundResource){ 

m = MediaPlayer.create(getApplicationContext(), soundResource); 

} 
1

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

Пример:

public void sound (int soundId) { 
    AssetFileDescriptor aFileDesc = context.getResources().openRawResourceFd(soundId); 
    m = MediaPlayer.create(getApplicationContext(), soundId); 
    //do something 
} 

Надеется, что это помогает.

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