안드로이드 개발 질문/답변
(글 수 45,052)
리스트뷰에서 텍스트를 추가하고
텍스트값을 다른클래스에서 사용하고싶은데요
아래 String message = arrayList1.get(position);를
다른클래스에서 사용하고싶습니다..
package com.whdrb19.Taxi_Catch;
public class Menu_Select2 extends Activity {
boolean mBackKeyPressed; long mCurrTimeInMillis; private String message1; public String getMessage1() { return message1; }
public void setMessage1(String message1) { this.message1 = message1; }
private Intent intent; private ListView lv1, lv2;
// 어레이리스트 private ArrayList<String> arrayList1, arrayList2; // 어레이어답터 private ArrayAdapter<String> arrayAdapter1, arrayAdapter2;
// 클래스호출 private Menu_Input_Dictionary mid = new Menu_Input_Dictionary(this);// Context
// 배열처리.. private String[] wordlist1 = null; private String[] wordlist2 = null;
// Database
private SQLiteDatabase db;
public void onCreate(Bundle savedInstanceState) {// onCreate super.onCreate(savedInstanceState); requestWindowFeature(Window.FEATURE_NO_TITLE); setContentView(R.layout.menu_select);
lv1 = (ListView) findViewById(R.id.list1); lv2 = (ListView) findViewById(R.id.list2);
((ImageView) findViewById(R.id.imgmenu1)) .setOnClickListener(new ImageView.OnClickListener() { public void onClick(View v) { intent = new Intent(Menu_Select2.this, Menu_Help1.class);// Main클래스 // 불러오기 startActivity(intent); finish(); } }); ((ImageView) findViewById(R.id.imgmenu3)) .setOnClickListener(new ImageView.OnClickListener() { public void onClick(View v) { intent = new Intent(Menu_Select2.this, Menu_Input3.class);// Main클래스 불러오기 startActivity(intent); finish(); } }); ((ImageView) findViewById(R.id.imgmenu4)) .setOnClickListener(new ImageView.OnClickListener() { public void onClick(View v) { intent = new Intent(Menu_Select2.this, Menu_Effect4.class);// Main클래스 불러오기 startActivity(intent); finish(); } }); ((ImageView) findViewById(R.id.imgmenu5)) .setOnClickListener(new ImageView.OnClickListener() { public void onClick(View v) { intent = new Intent(Menu_Select2.this, Menu_Run5.class);// Main클래스 // 불러오기 startActivity(intent); } });
readDatabase1(); readDatabase2();
}// onCreate끝..
// DB읽기메서드1 private void readDatabase1() { int listcount = 0; try { String[] FROM = { "name1" }; db = mid.getReadableDatabase(); Cursor cursor = db.query("taxi1", FROM, null, null, null, null, null); startManagingCursor(cursor); wordlist1 = new String[cursor.getCount()]; while (cursor.moveToNext()) { wordlist1[listcount] = cursor.getString(0); listcount++; } } catch (Exception e) { mid.close(); } if (listcount > 0) { arrayList1 = new ArrayList<String>();// 어레이리스트생성자.. for (int i = 0; i < wordlist1.length; i++) { arrayList1.add(wordlist1[i]); } arrayAdapter1 = new ArrayAdapter// 어레이어답터 (getBaseContext(), android.R.layout.simple_list_item_single_choice, arrayList1); lv1.setAdapter(arrayAdapter1);// 리스트뷰에 어댑터장착. lv1.setChoiceMode(ListView.CHOICE_MODE_SINGLE); lv1.setOnItemClickListener(mItemClick1); } }
// DB읽기메서드2 private void readDatabase2() { int listcount = 0; try { String[] FROM = { "name2" }; db = mid.getReadableDatabase(); Cursor cursor = db.query("taxi2", FROM, null, null, null, null, null); startManagingCursor(cursor);
wordlist2 = new String[cursor.getCount()]; while (cursor.moveToNext()) { wordlist2[listcount] = cursor.getString(0); listcount++; } } catch (Exception e) { mid.close(); } if (listcount > 0) { arrayList2 = new ArrayList<String>();// 어레이리스트생성자.. for (int i = 0; i < wordlist2.length; i++) { arrayList2.add(wordlist2[i]);// /////////나중에사용할부분.. } arrayAdapter2 = new ArrayAdapter// 어레이어답터 (getBaseContext(), android.R.layout.simple_list_item_single_choice, arrayList2); lv2.setAdapter(arrayAdapter2);// 리스트뷰에 어댑터장착. lv2.setChoiceMode(ListView.CHOICE_MODE_SINGLE); lv2.setOnItemClickListener(mItemClick2); } }
AdapterView.OnItemClickListener mItemClick1 = new AdapterView.OnItemClickListener() { @Override public void onItemClick(AdapterView<?> arg0, View view, int position, long id) { String message = arrayList1.get(position); setMessage1(message); Toast.makeText(Menu_Select2.this, getMessage1() + "을 선택 하셨습니다.", Toast.LENGTH_SHORT).show(); } };
AdapterView.OnItemClickListener mItemClick2 = new AdapterView.OnItemClickListener() { @Override public void onItemClick(AdapterView<?> arg0, View view, int position, long id) { String message = arrayList2.get(position); Toast.makeText(Menu_Select2.this, message + "을 선택 하셨습니다.", Toast.LENGTH_SHORT).show(); } };
}
package com.whdrb19.Taxi_Catch;
public class Menu_Run5_Draw extends View implements Runnable{ private Menu_Select2 select2 = new Menu_Select2(); private int x = 100; private Paint paint; public Menu_Run5_Draw(Context context) { super(context); Thread thread = new Thread(this); thread.start(); } @Override protected void onDraw(Canvas canvas) { super.onDraw(canvas); paint = new Paint(); paint.setTextSize(100.0f); paint.setColor(Color.WHITE); canvas.drawText(select2.getMessage1(), x, 100, paint); } Handler mHandler = new Handler(){ @Override public void handleMessage(Message msg) { super.handleMessage(msg); invalidate(); Log.i("myLog", "Log"); } }; @Override public void run() { while (true) { for (int i = 0; i < 1000; i++) { try { Thread.sleep(1); } catch (Exception e) { } x = i; mHandler.sendEmptyMessage(0); } } } }