Это может быть проблема с вашим списком.Вы можете создать собственный элемент ListView, который имеет как ImageView, так и текстовое представление для отображения как нарисованного изображения вашего пакета, так и имени пакета.
создать элемент списка - list_single.xml
поместите этот XML-файлв вашем ресурсе / макете.
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
android:layout_width="fill_parent"
android:layout_height="fill_parent"
android:orientation="horizontal" >
<ImageView
android:id="@+id/icon"
android:layout_width="50dp"
android:layout_height="50dp"
android:layout_marginBottom="5dp"
android:layout_marginLeft="5dp"
android:layout_marginRight="5dp"
android:layout_marginTop="5dp"
android:src="@drawable/ic_launcher" />
<TextView
android:id="@+id/Itemname"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:textSize="20sp"
android:paddingTop="5dp"/>
</LinearLayout>
main_activity.xml
<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"
tools:context="{relativePackage}.${activityClass}" >
<ListView
android:id="@+id/android:list"
android:layout_width="fill_parent"
android:layout_height="fill_parent" />
</RelativeLayout>
Наконец, ваш файл MainActivity.java
public class MainActivity extends ListActivity {
String[] itemname ={
"Safari",
"Camera",
"Global",
"FireFox",
"UC Browser",
"Android Folder",
"VLC Player",
"Cold War"
};
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_main);
this.setListAdapter(new ArrayAdapter<String>(
this, R.layout.mylist,
R.id.Itemname,itemname));
}
}
ПРИМЕЧАНИЕ. Обратите внимание, что вместо использованияодин из типов макетов по умолчанию, в этом примере вы используете свой собственный определяемый макет:
this.setListAdapter(new ArrayAdapter<String>(
this, R.layout.mylist,
R.id.Itemname,itemname));