2017-01-04 7 views
0

私のアプリケーションでは、特定の数学的計算を実装したいのですが、年齢グループとデータをカバーする変数がありますので、実際に表示します: 'Adequaçãoda CB = CB obtida/CB percentile 50 * 100 'である。これは数式で、変数 "CBパーセンタイル50"は28種類の表現形式を持ちます。たとえば、1〜2歳の場合は16、2〜3の場合は16.3、3 To 4の値は16.8です。スピンナーに年齢データを確認させて、この値を数式に入れる方法を教えてください。値をスピナーに関連付けます

私の文字列が

<string name="fxetaria">Selecione a Faixa Etária</string> 
    <string-array name="faixaet"> 
     <item>1 a 1.9</item> 
     <item>2 a 2.9</item> 
     <item>3 a 3.9</item> 
     <item>4 a 4.9</item> 
     <item>5 a 5.9</item> 
     <item>6 a 6.9</item> 
     <item>7 a 7.9</item> 
     <item>8 a 8.9</item> 
     <item>9 a 9.9</item> 
     <item>10 a 10.9</item> 
     <item>11 a 11.9</item> 
     <item>12 a 12.9</item> 
     <item>13 a 13.9</item> 
     <item>14 a 14.9</item> 
     <item>15 a 15.9</item> 
     <item>16 a 16.9</item> 
     <item>17 a 17.9</item> 
     <item>18 a 24.9</item> 
     <item>25 a 29.9</item> 
     <item>30 a 34.9</item> 
     <item>35 a 39.9</item> 
     <item>40 a 44.9</item> 
     <item>45 a 49.9</item> 
     <item>50 a 54.9</item> 
     <item>55 a 59.9</item> 
     <item>60 a 64.9</item> 
     <item>65 a 69.9</item> 
     <item>70 a 74.9</item> 
    </string-array> 

そして、私の活動をファイル:

public class adeqcbh extends AppCompatActivity { 

    Spinner spinner; 
    ArrayAdapter<CharSequence> adapter; 

    @Override 
    protected void onCreate(Bundle savedInstanceState) { 
     super.onCreate(savedInstanceState); 
     setContentView(R.layout.activity_adeqcbh); 

     spinner = (Spinner)findViewById(R.id.spinner); 
     adapter = ArrayAdapter.createFromResource(this, R.array.faixaet, android.R.layout.simple_spinner_item); 
     adapter.setDropDownViewResource(android.R.layout.simple_spinner_dropdown_item); 
     spinner.setAdapter(adapter); 
     spinner.setOnItemSelectedListener(new AdapterView.OnItemSelectedListener() { 
      @Override 
      public void onItemSelected(AdapterView<?> parent, View view, int position, long id) { 

      } 

      @Override 
      public void onNothingSelected(AdapterView<?> parent) { 

      } 
     }); 
    } 
} 
+0

あなたは既にデータを「スピナー」に「関連付ける」ことで、実際に何かを行い、コードを 'onItemSelected(..)'の間に入れます。 – Pztar

答えて

0

私は最善の方法は、(あなたの最初の配列と同量)の値を持つ別の配列を持っているだろうと思っています。

<string-array name="faixaet_values"> 
    <item>16</item> 
    <item>16.3</item> 
    ... 
<string-array> 

次に、onItemSelectedメソッドで、新しい文字列配列から値を取得します。

String valueString = getResources().getStringArray(R.array.faixaet_values)[position - 1]; 
float value; 
try { 
    value = Float.valueOf(valueString); 
} catch(NumberFormatException e) { 
    Log.e(TAG, "This is not a number"); 
} 
+0

私はこれを行うとアプリが停止する –

+0

あなたは何を得ているのですか? – opt05

+0

私は理解していない –

関連する問題