I'm currently learning some android for a school project and I can't figure out the way to set text dynamically to a TextView.
Here is the full activity:
package com.avilyne.android.gcmclient;
import java.util.ArrayList;
import android.os.Bundle;
import android.app.Activity;
import android.app.AlertDialog;
import android.content.Intent;
import android.view.Menu;
import android.view.View;
import android.widget.AdapterView;
import android.widget.AdapterView.OnItemClickListener;
import android.widget.ArrayAdapter;
import android.widget.EditText;
import android.widget.ListView;
import android.widget.TextView;
import android.content.DialogInterface;
public class EnviarMensaje extends Activity {
ListView l;
EditText t;
TextView err;
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_enviar_mensaje);
l = (ListView)findViewById(R.id.listaVista);
t = (EditText)findViewById(R.id.editText1);
err = (TextView)findViewById(R.id.textoss);
err.setText("Escriba su mensaje y luego seleccione el canal.");
l.setOnItemClickListener(new OnItemClickListener() {
@Override
public void onItemClick(AdapterView<?> arg0, View arg1, int arg2, long arg3) {
String m= t.getText().toString();
if(m.equals("")){
err.setText("Escriba su mensaje y luego seleccione el canal.");
return;
}
else{
showAlert();
(new Funciones()).EnviarMensaje(l.getItemAtPosition(arg2).toString(), m);
//mostrar mensaje Su mensaje ha sido enviado
Intent activityChangeIntent = new Intent(EnviarMensaje.this, FirstActivity.class);
EnviarMensaje.this.startActivity(activityChangeIntent);
}
}
});
ListView lv;
setContentView(R.layout.activity_enviar_mensaje);
lv = (ListView)findViewById(R.id.listaVista);
ArrayList<String> your_array_list = (new Funciones()).listarCanales();
// This is the array adapter, it takes the context of the activity as a first // parameter, the type of list view as a second parameter and your array as a third parameter
ArrayAdapter<String> arrayAdapter = new ArrayAdapter<String>(this,android.R.layout.simple_list_item_1, your_array_list);
lv.setAdapter(arrayAdapter);
}
@Override
public boolean onCreateOptionsMenu(Menu menu) {
// Inflate the menu; this adds items to the action bar if it is present.
getMenuInflater().inflate(R.menu.enviar_mensaje, menu);
return true;
}
private void showAlert(){
AlertDialog alertDialog = new AlertDialog.Builder(this).create();
alertDialog.setTitle("Confirmación.");
alertDialog.setMessage("Su mensaje ha sido enviado correctamente.");
alertDialog.setButton("OK", new DialogInterface.OnClickListener() {
public void onClick(DialogInterface dialog, int which) {
// TODO Add your code for the button here.
}
});
// Set the Icon for the Dialog
alertDialog.setIcon(R.drawable.ic_launcher);
alertDialog.show();
}
}
Below is my activity_enviar_mensaje:
<RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android"
xmlns:tools="http://schemas.android.com/tools"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:paddingBottom="@dimen/activity_vertical_margin"
android:paddingLeft="@dimen/activity_horizontal_margin"
android:paddingRight="@dimen/activity_horizontal_margin"
android:paddingTop="@dimen/activity_vertical_margin"
tools:context=".EnviarMensaje" >
<TextView
android:id="@+id/instrucciones"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_alignParentTop="true"
android:text="Escriba el mensaje y luego clickee el canal a ser enviado"
android:textSize="20sp" />
<EditText
android:id="@+id/editText1"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_alignLeft="@+id/instrucciones"
android:layout_alignRight="@+id/instrucciones"
android:layout_below="@+id/instrucciones"
android:ems="10"
android:inputType="text" />
<TextView
android:id="@+id/textoss"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_alignLeft="@+id/listaVista"
android:layout_alignParentBottom="true"
android:text="TextView" />
<ListView
android:id="@+id/listaVista"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_above="@+id/textoss"
android:layout_alignParentLeft="true"
android:layout_below="@+id/editText1" >
</ListView>
</RelativeLayout>
Any help will be much appreciated... Thank you for the time, José.