Come da titolo sto creando il mio primo programma android. Si tratta di un seplice bottone che conta i click del mouse. Accanto al contatore dovrei avere la descrizione contenuta nella stringa output_label nella cartella values. Nel caso il contatore segnasse valori contenuti nelle stringhe Array o Integer Array (anche loro in values)la descrizione output_label deve cambiare... non capisco però quale comando usare dopo onClick(View v)...
Main:
codice:
<?xml version="1.0" encoding="utf-8"?>
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
android:orientation="vertical" android:layout_width="fill_parent"
android:layout_height="fill_parent">
<TextView android:layout_width="fill_parent" android:id="@+id/output"
android:layout_height="wrap_content" android:text="@string/hello" />
<Button android:text="@string/button_label" android:id="@+id/pressButton"
android:layout_width="wrap_content" android:layout_height="wrap_content"></Button>
</LinearLayout>
contenuto text.xml nella cartella values:
codice:
<?xml version="1.0" encoding="utf-8"?>
<resources>
<string name="app_title">Button Counter</string>
<string name="button_label">Press</string>
<string name="output_label">Numero Click:</string>
<string-array name="myArray">
<item>Valore1</item>
<item>Valore2</item>
<item>Valore3</item>
<item>Valore4</item>
<item>Valore5</item>
<item>Valore6</item>
<item>Valore7</item>
<item>Valore8</item>
<item>Valore9</item>
<item>Valore10</item>
<item>Valore11</item>
</string-array>
<integer-array name="primeArray">
<item>2</item>
<item>3</item>
<item>5</item>
<item>7</item>
<item>11</item>
</integer-array>
</resources>
contenuto dell'Activity:
codice:
package it.apogeo.android.cap03.helloandroidadt;
import android.app.Activity;
import android.os.Bundle;
import android.widget.Button;
import android.widget.TextView;
import android.view.View;
import android.view.View.OnClickListener;
import android.content.res.Resources;
public class HelloAndroidADT2Activity extends Activity {
//Inizializzo contatore
private int counter=0;
/** Called when the activity is first created. */
@Override
public void onCreate(Bundle savedInstanceState) {
//Riferimento ad android.content.res.Resource
Resources res = getResources();
super.onCreate(savedInstanceState);
setContentView(R.layout.main);
//Riferimento al Button
Button pressButton = (Button) findViewById(R.id.pressButton);
//Riferimento alla TextView e agli array da associare al contatore
final TextView outpuView = (TextView) findViewById(R.id.output);
final String outputLabel = getResources().getString(R.string.output_label);
final int[] primeNumbers = getResources().getIntArray(R.array.primeArray);
final String[] labels = getResources().getStringArray(R.array.myArray);
// Ascoltiamo l'evento di pressione associato al pulsante
// Quì ho il problema, invece di Click # vorrei l'outputLabel...
pressButton.setOnClickListener(new OnClickListener() {
public void onClick(View v) {
outputView.setText("Click # " +counter++);
}
});
}
}
Sono nuovo nel campo android, accetto qualsiasi consiglio/suggerimento...