我想在我的应用程序中实现某些数学计算,但是,它有一个涵盖年龄组和数据的变量,我将在实践中显示:'AdequaçãodaCB = CB obtida / CB百分位数50 * 100'。这是公式,其中变量“CB百分位数50”具有28种不同的表达形式,例如,从1到2岁它具有值16,从2到3具有值16.3,从3到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 :(得分: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");
}