Cómo convertir valores de cadena a lista de matriz de entero – Android
Quiero introducir 3 datos De 3 campos de EditText y querrá mostrar como un Bar-Chart.
Aquí está mi sección de código. Dame una solución para estos errores ..
- Actualizar Android TextView
- gcm_defaultSenderId no se puede resolver
- Cómo recuperar las miniaturas de YouTube con la biblioteca de clientes de la API de Google para Java
- La clase generada para Component of Dagger 2 no se encuentra en compileTestJava del complemento Java de Gradle
- JSON válido sigue recibiendo error de análisis
He intentado obtener este gráfico de barras utilizando este código. Pero no está funcionando. i Comentario El // PUNTO DE ERROR
protected void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); setContentView(R.layout.getfromdb); final String[] mMonth = new String[] { "Jan", "Feb" , "Mar", "Apr", "May", "Jun", "Jul", "Aug" , "Sep", "Oct", "Nov", "Dec" }; final EditText t1 =(EditText)findViewById(R.id.textView1); final EditText t2 =(EditText)findViewById(R.id.textView2); final EditText t3 =(EditText)findViewById(R.id.textView3); Button btnChart = (Button) findViewById(R.id.btnView); int x1 = Integer.parseInt(t1.getText().toString()); int x2 = Integer.parseInt(t2.getText().toString()); int x3 = Integer.parseInt(t3.getText().toString()); btnChart.setOnClickListener(new OnClickListener() { @Override public void onClick(View v) { openChart(); } private void openChart() { int x1 = Integer.parseInt(t1.getText().toString()); int x2 = Integer.parseInt(t2.getText().toString()); int x3 = Integer.parseInt(t3.getText().toString()); int[] x = { 0,1,2 }; int [] income = {x1 ,x2, x3}; //ERROR POINT XYSeries incomeSeries = new XYSeries("Pulse Rate"); XYSeries expenseSeries = new XYSeries(""); for(int i=0;i<x.length;i++){ incomeSeries.add(i,income[i]); } XYMultipleSeriesDataset dataset = new XYMultipleSeriesDataset(); dataset.addSeries(incomeSeries); dataset.addSeries(expenseSeries); XYSeriesRenderer incomeRenderer = new XYSeriesRenderer(); incomeRenderer.setColor(Color.rgb(130, 130, 230)); incomeRenderer.setFillPoints(true); incomeRenderer.setLineWidth(2); incomeRenderer.setDisplayChartValues(true); XYSeriesRenderer expenseRenderer = new XYSeriesRenderer(); expenseRenderer.setColor(Color.rgb(220, 80, 80)); expenseRenderer.setFillPoints(true); expenseRenderer.setLineWidth(2); expenseRenderer.setDisplayChartValues(true); XYMultipleSeriesRenderer multiRenderer = new XYMultipleSeriesRenderer(); multiRenderer.setXLabels(0); multiRenderer.setChartTitle("Pulse Chart"); multiRenderer.setXTitle("Pulse rate"); multiRenderer.setYTitle("Days"); multiRenderer.setZoomButtonsVisible(true); for(int i=0; i< x.length;i++){ multiRenderer.addXTextLabel(i, mMonth[i]); } multiRenderer.addSeriesRenderer(incomeRenderer); multiRenderer.addSeriesRenderer(expenseRenderer); Intent intent = ChartFactory.getBarChartIntent(getBaseContext(), dataset, multiRenderer, Type.DEFAULT); startActivity(intent); } }); } private void setListAdapter(SimpleCursorAdapter adapter) { // TODO Auto-generated method stub }
Comentar el // PUNTO DE ERROR en el segmento de código. Cuando doy los valores a este punto como un
int [] income = {60 ,40, 50}; //It should Be working
Entonces debe estar trabajando .. Pero quiero poner estos valores con los cuadros EditText.
- ¿Debo hacer java objetos nulos?
- ¿Existe y es equivalente a la clase Point pero para los puntos 3D?
- Análisis de memoria en Android: dominator_tree no muestra todas las instancias de algunos objetos
- Comprobar si existe una entrada en una base de datos
- WebView y Cookies en Android
- Color value drawable resource issue
- Biblioteca de justificación de texto en Java
- Dibujo sobre lienzo y varios objetos de pintura
intenta esta línea
int x1 = Integer.parseInt(t1.getText().toString());
trate de repetir esto
int x1 = Integer.parseInt(t1.getText().toString()).getIntValue();
Como se menciona en los comentarios, tomar una matriz Integer de ingreso -: Integer [] income = {x1, x2, x3};
Que puede utilizar Arrays.asList (ingresos)
Cambie el método openChart
siguiente manera:
private void openChart() { int x1 = Integer.parseInt(t1.getText().toString()); int x2 = Integer.parseInt(t2.getText().toString()); int x3 = Integer.parseInt(t3.getText().toString()); int[] income = {x1 ,x2, x3}; }
si desea convertir de entero a int, entonces debe escribir código como
int x1 = Integer.parseInt(t1.getText().toString()).getIntValue();
a continuación, utilice el valor int en algún lugar
final EditText t1 =(EditText)findViewById(R.id.textView1); final EditText t2 =(EditText)findViewById(R.id.textView2); final EditText t3 =(EditText)findViewById(R.id.textView3); ArrayList<Integer> integersList = new ArrayList<Integer>(); integersList.add(Integer.parseInt(t1.getText().toString())); integersList.add(Integer.parseInt(t2.getText().toString())); integersList.add(Integer.parseInt(t3.getText().toString()));
Simplemente reemplace este código
int x1 = Integer.parseInt(t1.getText().toString()); int x2 = Integer.parseInt(t2.getText().toString()); int x3 = Integer.parseInt(t3.getText().toString());
forma esto
int x1 = Integer.parseInt(t1.getText().toString()).getIntValue();; int x2 = Integer.parseInt(t2.getText().toString()).getIntValue();; int x3 = Integer.parseInt(t3.getText().toString()).getIntValue();;