sábado, 31 de marzo de 2018

11 Android. Colores

Retomamos nuestro anterior proyecto de ListView para ver como cambiar el color de un item del listview al pulsarlo.


viernes, 23 de marzo de 2018

10 Android. ListView

Vemos como mostrar en ListView los datos obtenidos de un array usando un adaptador (adapter) para pasar los datos al ListView y mostrarlos tipo lista en nuestra aplicacion.
Despues de esto podremos realizar diferentes acciones al pulsar cada elemento de la lista.


MainActivity.java
package ticoticotaa.es.listview;

import android.os.Bundle;
import android.support.v7.app.AppCompatActivity;
import android.view.View;
import android.widget.AdapterView;
import android.widget.ArrayAdapter;
import android.widget.ListView;
import android.widget.Toast;

public class MainActivity extends AppCompatActivity {
    ListView lvLista;
    String[] colores = new String[] {"rojo","amarillo","verde","azul"};
    @Override
    protected void onCreate(Bundle savedInstanceState) {
        super.onCreate(savedInstanceState);
        setContentView(R.layout.activity_main);
        lvLista=(ListView)findViewById(R.id.lvLista);
        ArrayAdapter<String> adaptador=new ArrayAdapter<String>(this,android.R.layout.simple_expandable_list_item_1,colores);
        lvLista.setAdapter(adaptador);
        lvLista.setOnItemClickListener(new AdapterView.OnItemClickListener() {
            @Override
            public void onItemClick(AdapterView<?> parent, View view, int position, long id) {

                Toast.makeText(getApplicationContext(),"Pulsastes el numero "+position,Toast.LENGTH_SHORT).show();
            }
        });
    }
}

activity_main.xml
<?xml version="1.0" encoding="utf-8"?><android.support.constraint.ConstraintLayout xmlns:android="http://schemas.android.com/apk/res/android"    xmlns:app="http://schemas.android.com/apk/res-auto"    xmlns:tools="http://schemas.android.com/tools"    android:layout_width="match_parent"    android:layout_height="match_parent"    tools:context="ticoticotaa.es.listview.MainActivity">

    <ListView        android:id="@+id/lvLista"        android:layout_width="368dp"        android:layout_height="495dp"        tools:layout_editor_absoluteX="8dp"        tools:layout_editor_absoluteY="8dp" />
</android.support.constraint.ConstraintLayout>

domingo, 18 de marzo de 2018

09 Android. Pasar datos entre Actividades

En el video vemos como pasar datos entre Actividades Android, bajo estas lineas teneis el codigo completo usado en este ejemplo.




MainActivity
import android.content.Intent;
import android.os.Bundle;
import android.support.v7.app.AppCompatActivity;
import android.view.View;
import android.widget.Button;
import android.widget.EditText;


public class MainActivity extends AppCompatActivity implements View.OnClickListener{
    EditText etNombre;
    Button btnEnviar;
    @Override
    protected void onCreate(Bundle savedInstanceState) {
        super.onCreate(savedInstanceState);
        setContentView(R.layout.activity_main);
        etNombre=(EditText)findViewById(R.id.etNombre);
        btnEnviar=(Button)findViewById(R.id.btnEnviar);
        btnEnviar.setOnClickListener(this);

    }


    @Override
    public void onClick(View v) {
        Intent intent = new Intent(this,Activity2.class);
        intent.putExtra("nombre",etNombre.getText().toString());
        startActivity(intent);
    }
}

activity_main.xml
<?xml version="1.0" encoding="utf-8"?><android.support.constraint.ConstraintLayout xmlns:android="http://schemas.android.com/apk/res/android"    xmlns:app="http://schemas.android.com/apk/res-auto"    xmlns:tools="http://schemas.android.com/tools"    android:layout_width="match_parent"    android:layout_height="match_parent"    tools:context="ticoticotaa.es.pasardatosactivity.MainActivity">

    <TextView        android:id="@+id/textView"        android:layout_width="wrap_content"        android:layout_height="wrap_content"        android:text="@string/tvNombre"        app:layout_constraintBottom_toBottomOf="parent"        app:layout_constraintHorizontal_bias="0.051"        app:layout_constraintLeft_toLeftOf="parent"        app:layout_constraintRight_toRightOf="parent"        app:layout_constraintTop_toTopOf="parent"        app:layout_constraintVertical_bias="0.067" />

    <EditText        android:id="@+id/etNombre"        android:layout_width="wrap_content"        android:layout_height="wrap_content"        android:layout_marginStart="132dp"        android:layout_marginTop="24dp"        android:ems="10"        android:hint="@string/etNombre"        android:inputType="textPersonName"        app:layout_constraintStart_toStartOf="parent"        app:layout_constraintTop_toTopOf="parent" />

    <Button        android:id="@+id/btnEnviar"        android:layout_width="92dp"        android:layout_height="wrap_content"        android:layout_marginStart="132dp"        android:layout_marginTop="164dp"        android:text="@string/btnEnviar"        app:layout_constraintStart_toStartOf="parent"        app:layout_constraintTop_toTopOf="parent" />

</android.support.constraint.ConstraintLayout>

Activity2

package ticoticotaa.es.pasardatosactivity;

import android.content.Intent;
import android.os.Bundle;
import android.support.v7.app.AppCompatActivity;
import android.widget.TextView;

public class Activity2 extends AppCompatActivity {
    TextView tvSaludo;
    @Override
    protected void onCreate(Bundle savedInstanceState) {
        super.onCreate(savedInstanceState);
        setContentView(R.layout.activity_2);
        tvSaludo=(TextView)findViewById(R.id.tvSaludo);
        Intent intent = getIntent();
        Bundle extras = intent.getExtras();
        if(extras!=null){
            String Nombre = (String)extras.get("nombre");
            tvSaludo.setText("Hola "+Nombre);
        }
    }
}

activity_2.xml

<?xml version="1.0" encoding="utf-8"?><android.support.constraint.ConstraintLayout xmlns:android="http://schemas.android.com/apk/res/android"    xmlns:app="http://schemas.android.com/apk/res-auto"    xmlns:tools="http://schemas.android.com/tools"    android:layout_width="match_parent"    android:layout_height="match_parent"    tools:context="ticoticotaa.es.pasardatosactivity.Activity2">


    <TextView        android:id="@+id/tvSaludo"        android:layout_width="wrap_content"        android:layout_height="wrap_content"        android:text=""        tools:layout_editor_absoluteX="163dp"        tools:layout_editor_absoluteY="177dp" />
</android.support.constraint.ConstraintLayout>