2011-01-13 4 views
0

Hey, je veux créer une mise en page comme celle-ci pour mon application. Bien sûr, les fonctionnalités seront différentes. J'étudie le code source pour cela, et j'ai trouvé les fichiers xml qui le font. Je ne sais pas comment tout mettre en œuvre que dans l'activité, comment appeler, quoi créer un listview, etc.Comment créer une mise en page comme la mise en page Android CallLog

alt text

Je veux dire, je veux juste donner le nom d'une police plus grande et la date comme dans l'image, avec une petite police mais alignée sur la droite. Parce que, je veux obtenir les données de la base de données que j'ai créées et l'imprimer comme cette liste de CallLog.

Je veux dire, comment Android rend la date avec cette icône alignée dans le droit, avec une petite taille de police?

Donc, c'est mon activité, je ne sais pas quel fichier xml du code source à utiliser, ou quelle méthode mettre en œuvre afin que je puisse imprimer les données comme l'exemple de l'image.

public class RatedCalls extends ListActivity { 

private static final String LOG_TAG = "RatedCalls"; 
private TableLayout table; 
private CallDataHelper cdh; 
private TableRow row; 
private TableRow row2; 

public void onCreate(Bundle savedInstanceState) { 

    super.onCreate(savedInstanceState); 

    setContentView(R.layout.recent_calls); 

    Log.i(LOG_TAG, "calling from onCreate()"); 

    cdh = new CallDataHelper(this); 

    startService(new Intent(this, RatedCallsService.class)); 
    Log.i(LOG_TAG, "Service called."); 
    Log.i(LOG_TAG, "before call fillList"); 

    /* 
    * mAdapter = new RecentCallsAdapter(); 
    * getListView().setOnCreateContextMenuListener(this); 
    * setListAdapter(mAdapter); 
    */ 

    fillList(); 
    Log.i(LOG_TAG, "after call fillList"); 

} 

public void onResume() { 

    super.onResume(); 
    fillList(); 

} 

public void fillList() { 

    Log.i(LOG_TAG, "entered on fillList"); 
    List<String> ratedCalls = new ArrayList<String>(); 
    ratedCalls = this.cdh.selectTopCalls(); 


    //setListAdapter(new ArrayAdapter<String>(this, R.layout.recent_calls_list_item, 
    //ratedCalls)); 


    ListView lv = getListView(); 
    lv.setTextFilterEnabled(true); 
    getListView().setOnCreateContextMenuListener(this); 

    lv.setOnItemClickListener(new OnItemClickListener() { 
     public void onItemClick(AdapterView<?> parent, View view, 
       int position, long id) { 


      Toast.makeText(getApplicationContext(), 
        ((TextView) view).getText(), Toast.LENGTH_LONG).show(); 
     } 
    }); 

} 

} 

Merci. Je vais créer un listview avec plusieurs textviews.

+1

Vous demandez comment écrire un programme énorme pour vous. Brisez-le étape par étape. Personne ne va écrire votre code pour vous. – Falmarri

+0

Non, ce n'est pas ça, j'aime juste une aide, si vous me dites juste quoi faire, ou un tutoriel sur la façon de mettre en œuvre cela, c'est ok. Merci. – rogcg

+0

D'abord apprendre à faire une liste simple, alors peut-être que nous pouvons vous aider avec quelque chose de similaire. Je ne sais pas où commencer à vous dire ce que vous devez faire –

Répondre

0

Il est juste un processus en 2 étapes:

  1. Créer une mise en page fichier Xml qui représente 1 élément de votre liste.
  2. Étendez l'adaptateur de matrice et utilisez votre fichier de disposition personnalisé. Il existe plusieurs exemples sur Internet sur la façon d'étendre l'adaptateur de réseau.
Questions connexes