1. ListVeiw부분에서 코드별로 속성을 주고싶어 변경하게되면
최종적으로 Adpater에게 전달한 부분만이 출력되더군요.
simple_list_item_single_choice,simple_list_item_1 이 2가지를 동시속성으로 주고싶은데
어떻게 하는지 모르겠습니다. 또 주제가 바뀌어서 ListView자체에 짧은 줄같은걸 넣어서 표시해주고싶은데
잘 안나와있더군요.
하나더, 만약 글자 종류를 설정했을경우 현재 어떤 글자체가 선택되었는지, 그 속성 바로 밑에 나타나게하려면 어떻게해야하는지
도움 주시면 감사하겠습니다.
2. 만약 다른걸로 안하고 ListView만 할경우, 메뉴를 클릭했을시 리턴값이 어떻게 이루어 지나요 ?
항목을 선택했을때 부가적인 기능을 실행시켜야하는데, 리턴값이 어떻게 돌아오는지를 모르겠습니다.
3. 다음은 제 소스인데, 실행은잘되는데 에뮬레이터에 출력이안됩니다. 어떻게 수정해야할까요 ?ㅠㅠ
package Scheduler_Calendar.list;
import java.util.*;
import android.app.*;
import android.content.*;
import android.os.*;
import android.view.*;
import android.widget.*;
import android.widget.AdapterView.*;
import android.graphics.*;
import com.android.*;
import android.util.*;
public class Scheduler_Calendar extends Activity{
ListView mListActivity;
class List {
List(Class<?> acls, String aTitle) {
cls = acls;
Title = cls.getSimpleName() + aTitle;
}
String Title;
Class<?> cls;
}
List[] arList = {
new List(Important_mitting.class,"중요 미팅 설정"),
new List(D_day.class,"D-Day 설정"),
new List(sel_font.class,"글자 모양 설정"),
new List(calendar_style.class,"달력 스타일 설정"),
new List(Information.class,"정보"),
};
public void onCreate(Bundle savedInstanceState){
// init();
// update();
super.onCreate(savedInstanceState);
setContentView(R.layout.mainlist);
mListActivity = (ListView)findViewById(R.id.listactivity);
ListView listview = new ListView(this);
ArrayList<String> arTitle = new ArrayList<String>();
for(List e : arList){
arTitle.add(e.Title);
}
ArrayAdapter<String> Adapter;
Adapter = new ArrayAdapter<String>(this,R.layout.main,R.layout.main,arTitle);
//아직 2가지 속성의 Adapter 속성을 주지 못하므로 막아놈
// Adapter = ArrayAdapter.createFromResource(this, R.array.main_list1, android.R.layout.simple_list_item_single_choice);
// Adapter = ArrayAdapter.createFromResource(this, R.array.main_list2, android.R.layout.simple_list_item_1);
listview.setAdapter(Adapter);
final Context ctx = this;
listview.setOnItemClickListener(new OnItemClickListener(){
public void onItemClick(AdapterView<?> parent, View view, int position, long id){
Intent intent = new Intent(ctx, arList[position].cls);
startActivity(intent);
}
});
setContentView(listview);
}
}
//화면에서 뒤로가기 할경우 항시 새로고침 해 주기위한 코드.
/* public void onRestart(){
super.onRestart();
update();
}
private void init(){
}
private void update(){
}
}
/* 밑에 메뉴 설정 부분
public class Scheduler_Calendar extends Activity {
public void onCreate(Bundle savedInstanceState){
super.onCreate(savedInstanceState);
TextView MyText = new TextView(this);
MyText.setText("목록을 선택하세요.");
setContentView(MyText);
}
public boolean onCreateOptionsMenu(Menu menu){
super.onCreateOptionsMenu(menu);
MenuItem item=menu.add(0,1,0,"짜장");
menu.add(0,2,0,"짬뽕");
menu.add(0,3,0,"우동");
return true;
}
public boolean onOptionsItemSelected(MenuItem item){
switch (item.getItemId()){
case 1:
Toast.makeText(this,"짜장",Toast.LENGTH_SHORT).show();
return true;
case 2:
Toast.makeText(this,"짬뽕",Toast.LENGTH_SHORT).show();
return true;
case 3:
Toast.makeText(this,"우동",Toast.LENGTH_SHORT).show();
return true;
}
return false;
}
}
*/
개발환경은 안드로이드 2.2(API 8) 입니다.