my でカスタム書体を提供するために、この例に従って拡張するクラスをここListActivityに書きました。CustomAdapterBaseAdapter
ただし、そこに記載されているように、getView()次のようにメソッドを記述しました。
public View getView(int position, View convertView, ViewGroup parent){
String gameName = gameNames[position]; // gameName ist the String[] of the Custom Adapter
TextView tv = new TextView(context);
tv.setText(gameName);
tv.setTypeface(Typeface.createFromAsset(context.getAssets(), "fonts/gulim.ttf"));
return tv;
}
これは意図したとおりに機能します。唯一気になる点は、リストが表示されるまでに約 3 ~ 4 秒かかることです (このコンテキストでは、これは非常に長い時間です)。ただし、次のように sListActivityを設定します。onItemClickListener
private void setOnItemClickListener(){
getListView().setOnItemClickListener(new OnItemClickListener() {
public void onItemClick(AdapterView<?> parent, View view, int pos, long id){
onClickEntryButton(((TextView) view).getText().toString());
}
});
}
private void onClickEntryButton(String gameName){
Intent intent = new Intent(this, GameActivity.class);
intent.putExtra("gameName", gameName);
startActivity(intent);
finish();
}
をクリックすると、が開くListItemまでにさらに時間がかかります。GameActivityこれは、SQLite データベースから取得した情報で満たされActivityたほんの数秒です。TextViewここでも、カスタムの書体を every に設定しますTextView。画面が2〜3秒間黒くなり(アプリがクラッシュしたように見えます)、新しいものがActivity表示されることさえあります. Activityこれは、アプリケーションの他の場所からアクセスする場合には発生しません。
どちらの場合でも - にアクセスする場合とから にListActivityアクセスする場合 -のカップルGameActivityListActivity
「szipinf - インフレ状態の初期化中」
メッセージは LogCat に表示されます。この文脈では、それらは何を意味するのでしょうか? onItemClickListenersgetView()を my のメソッドに設定する方が良いでしょうCustomAdapterか? 何かが実際に遷移を阻害しているように見えますが、計算または処理する大きなものがないため、何がわかりませんか (実際、SQLite データベースには、5 つのフィールドごとに正確に 2 つのエントリがあります)。
編集 必要に応じて、または必要に応じて、もちろん、より多くのコードを提供できます。