2014-04-08 4 views
0

나는 todo 목록을 만들 수있는 내부 폴더를 만드는 아이디어가있는 프로젝트를 진행하고 있습니다. 두 개의 서로 다른 목록 활동을 만들었습니다. 하나는 폴더 용이고 다른 하나는 할 일 목록 용입니다. 할 일 목록에서 리디렉션 할 폴더 제목을 클릭하면됩니다. 의도 방법을 사용했지만 폴더를 클릭 할 때 동일한 수행 할 작업 목록에서 이동합니다. 할 일 목록에서 옮겨 지지만 새로운 것으로 열리려면 어떻게 바꿀 수 있습니까? 또한 나는 폴더 제목의 각 위치에 대해 if statment를 사용하고 있는데, 사용자가 얼마나 많은 폴더를 만들지 알지 못한다면 얼마나 많은 stamtment를 만들지를 어떻게 알 수 있습니까?Android에서 새 활동으로 열기하는 방법

할 일 목록 활동

public class viewTasksActivity extends ListActivity { 

private Button addButton; 
private AnyNoteManagerApplication app; 
private TaskListAdapter adapter; 

@Override 
protected void onCreate(Bundle savedInstanceState) { 
    super.onCreate(savedInstanceState); 
    setContentView(R.layout.tasks_main); 


    setUpViews(); 
    app = (AnyNoteManagerApplication)getApplication(); 
    adapter = new TaskListAdapter(app.getCurrentTasks(), this); 
    setListAdapter(adapter); 

} 

@Override 
protected void onResume(){ 
    super.onResume(); 
    adapter.forceReload(); 

} 

@Override 
protected void onListItemClick(ListView l, View v, int position, long id) { 

    super.onListItemClick(l, v, position, id); 
    adapter.toggleTaskCompleteAtPosition(position); 

} 

private void setUpViews() { 
    addButton = (Button)findViewById(R.id.add_task_button); 
    addButton.setOnClickListener(new View.OnClickListener() { 

     @Override 
     public void onClick(View v) { 
     Intent intent = new Intent(viewTasksActivity.this, AddTaskActivity.class); 
     startActivity(intent); 

     } 
    }); 

} 

} 

폴더 목록 활동

public class MainActivity extends ListActivity { 

private Button addButton; 
private AnyNoteManagerApplication app; 
private FolderListAdapter adapter; 

@Override 
protected void onCreate(Bundle savedInstanceState) { 
    super.onCreate(savedInstanceState); 
    setContentView(R.layout.activity_main); 


    setUpViews(); 
    app = (AnyNoteManagerApplication)getApplication(); 
    adapter = new FolderListAdapter(app.getCurrentFolders(), this); 
    setListAdapter(adapter); 
} 

@Override 
protected void onResume(){ 
    super.onResume(); 
    adapter.forceReload(); 

} 

@Override 
protected void onListItemClick(ListView l, View v, int position, long id) { 
    // TODO Auto-generated method stub 
    super.onListItemClick(l, v, position, id); 
    if(position == 0) { 
     //code specific to first list item  
     Intent myIntent = new Intent(MainActivity.this, viewTasksActivity.class); 
     startActivity(myIntent); 
    } 
    if(position == 1) { 
     //code specific to first list item  
     Intent myIntent = new Intent(MainActivity.this, viewTasksActivity.class); 
     startActivity(myIntent); 
    } 


    /*Intent taskList = new Intent(MainActivity.this, viewTasksActivity.class); 

    startActivity(taskList);*/ 
} 

private void setUpViews() { 
    addButton = (Button)findViewById(R.id.add_folder_button); 

    addButton.setOnClickListener(new View.OnClickListener() { 

     @Override 
     public void onClick(View v) { 

     Intent intent = new Intent(MainActivity.this, AddFolderActivity.class); 

     startActivity(intent); 

     } 
    }); 
} 

} 

사전에 당신에게 모두 감사드립니다.

답변

0

그러면 새로운 활동이 열리게됩니다. 다른 활동의 데이터가 업데이트되지 않는 것 같습니다. 그래서 새로운 활동이 열리지 않는 것 같습니다. 당신이 보낸 값 얻을 수 있도록 열 활동에 그런

Bundle bundle = new Bundle(); 
bundle.putString("key", "some string value"); 
intent.putExtras(bundle); 
startActivity(intent); 

: 당신은 당신의 의도에 값을 추가하려면이 작업을 수행 할 수 있습니다

String sent_value = getIntent().getExtras().getString("key"); 

편집을

추가 할 수있는 모든 목록보기 값을 배열에 추가하고 onItemClick 목록에서 다음과 같이 클릭 한 항목을 가져올 수 있습니다.

list_values.get(position); 
관련 문제