package org.madore.android.unicodeMap; import java.util.List; import java.util.ArrayList; import android.content.Context; import android.content.res.AssetManager; import android.os.Bundle; import android.view.View; import android.widget.*; import android.text.ClipboardManager; import android.app.ListActivity; public final class UnicodeMapActivity extends ListActivity { protected UnicodeDatabase db; protected List list; /** Called when the activity is first created. */ @Override public void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); this.db = new UnicodeDatabase(getApplicationContext()); this.list = new ArrayList(db.countRange(0,1024)); for ( UnicodeCharacter ch : db.getRange(0,1024) ) list.add(ch); final ClipboardManager cmgr = (ClipboardManager)getSystemService(Context.CLIPBOARD_SERVICE); setListAdapter(new ArrayAdapter(this, R.layout.list_item, list)); ListView lv = getListView(); lv.setTextFilterEnabled(true); lv.setOnItemClickListener(new AdapterView.OnItemClickListener() { public void onItemClick(AdapterView parent, View view, int position, long id) { UnicodeCharacter it = (UnicodeCharacter)parent.getItemAtPosition(position); Toast.makeText(getApplicationContext(), it.getName(), Toast.LENGTH_SHORT).show(); cmgr.setText(new String(Character.toChars(it.getCodePoint()))); } }); } }