Estoy tocando un poco de desarrollo de android y no consigo ver donde se relacionan los archivos xml de layout con las activitys, es decir donde dice este layout es de este activity.Concretamente estoy mirando un adapter para una lista y hay que hacer un xml para cada item de la lista y no se como se corresponde el xml con el item.
Hace mucho que no toco nada de Android, solo me acuerdo de cosas sueltas así que no te fíes mucho de lo que te diga, ¿pero este tipo de cosas no iban en el manifest.xml?
Me acabo de dar cuenta que van en el oncreate
setContentView(R.layout.fichero_layout);
y con inflate en el caso de la listview
#3 Sí, siempre justo después de la llamada al super:
Si tienes el archivo activity_main.xml pues así lo "seteas" en la actividad. Luego, como ves en el ejemplo de abajo también, pues obtienes los diferentes elementos de ese XML (como un TextView o un boton) de la forma esa que pongo en el ejemplo:
public class MainActivity extends Activity {
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_main);
//--- text view---
TextView txtView = (TextView) findViewById(R.id.text_id);
String miTexto = txtView.getText().toString();
}
}
El XML sería este:
<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="match_parent"
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=".MainActivity" >
<TextView
android:id="@+id/text_id"
android:layout_width="300dp"
android:layout_height="200dp"
android:capitalize="characters"
android:text="hello_world"
android:textColor="@android:color/holo_blue_dark"
android:textColorHighlight="@android:color/primary_text_dark"
android:layout_centerVertical="true"
android:layout_alignParentEnd="true"
android:textSize="50dp"/>
</RelativeLayout>