2012-02-14 4 views
0

Я начинаю разработку программы для Android ... однако мне поручена разработка осциллографа в телефоне Android. У меня есть программа, когда я отлаживаю программу. Я поставил кнопку для осциллографа, используя этот код ..Разработка осциллографа Android

run_buton = (ToggleButton) findViewById(R.id.tbtn_runtoggle); 
    run_buton.setOnClickListener(this); 
    rb1 = (RadioButton)findViewById(R.id.rbtn_ch1); 
    rb2 = (RadioButton)findViewById(R.id.rbtn_ch2); 

и

public static final int rbtn_ch1 = 0; 
public static final int rbtn_ch2 = 0; 
public static final int txt_ch1pos = 0; 
public static final int txt_ch2pos = 0; 
public static final int button_connect = 0; 
public static final int WaveformArea = 0; 
public static int btn_position_down; 
public static int tbtn_runtoggle; 
public static int btn_position_up; 
btn_pos_up = (Button) findViewById(R.id.btn_position_up); 
btn_pos_down = (Button) findViewById(R.id.btn_position_down); 
btn_pos_up.setOnClickListener(this); 
btn_pos_down.setOnClickListener(this); 

и я установил все вещи после R.id. быть целое/поле .. которых показанная в R файл, как

однако Eclispe сказал мне, что у меня есть программа на три последних места ..., которые «btn_posiion_down», «tbtn_runtoggle» и «btn_postion_up» ниже .. он показывает ошибку, сказав, что «выражение дела должно быть константными выражениями» ... я не понимаю, что это значит ... Первое предложение сценария получает ошибку ...

case R.id.btn_position_up : 
     if(rb1.isChecked() && (ch1_pos<38)){ 
      ch1_pos += 1; ch1pos_label.setPadding(0, toScreenPos(ch1_pos), 0, 0); 
      sendMessage(new String(new byte[] {ADJ_POSITION, CHANNEL1, ch1_pos})); 
     } 
     else if(rb2.isChecked() && (ch2_pos<38)){ 
      ch2_pos += 1; ch2pos_label.setPadding(0, toScreenPos(ch2_pos), 0, 0); 
      sendMessage(new String(new byte[] {ADJ_POSITION, CHANNEL2, ch2_pos})); 
     } 
     break; 

кого маю любезно рассказывает мне, что происходит?

+0

Привет, я разрабатываю приложение для записи звука с помощью осциллографа. Я не знаю, как получить осциллограф. пожалуйста, укажите пример кода. Благодарю. –

ответ

1

Звучит так, как будто вы используете проект библиотеки, который определяет эти идентификаторы. Если это так, вы не можете использовать инструкции switch с этими идентификаторами, потому что они не являются статическими.

Попробуйте использовать операторы if/else вместо коммутатора. Инструмент Quick-Fix для Eclipses подскажет, что для вас, как для вашей проблемы.

+0

Я должен исправить все статические окончательные выше? или только с ошибками? Я использовал быстрое исправление .. и он предлагает мне превратить его в целое/поле ...- и по-прежнему получает ошибки после –

+0

вместо использования «case R.id.btn_position_up» использовать if (id == R.id. btn_position_up) –

+0

Привет, я разрабатываю приложение для записи звука с помощью осциллографа. Я не знаю, как получить осциллограф. пожалуйста, укажите пример кода. Благодарю. –

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