2012-10-10 2 views
0

나는 UI 레이아웃에서 Fragments를 사용하고 android app을 작업 중입니다. 하나의 조각에서 버튼 클릭 뒤에 datetime picker를 사용해야했습니다. 나는 활동에서 대화 상자를 사용하여 구현 된 샘플 datetime picker 응용 프로그램을 다운로드하고 조각에 있던 단추 클릭 뒤에서 작동하도록하는 데 문제가있었습니다. 그래서 내가 방금 대화 상자에 datetime picker를 표시하는 인 텐트를 사용하여 해당 단추에서 datetime picker 활동을 호출했습니다. 이제 선택기를 사용하여 날짜와 시간을 설정 한 후 '확인'버튼을 클릭하면이 활동을 호출 한 조각으로 돌아가서 선택한 날짜와 시간을 텍스트 뷰의 선택기에서 업데이트합니다. 그것을 성취하는 방법?일부 데이터로 안드로이드에서 Activity를 호출 한 Fragment로 돌아 가기

datetime picker 작업은 조각을 만드는 작업과 다릅니다.

답변

1

조각에는 활동과 동일한 수명주기가 있습니다.

날짜 선택기 활동에서 finish() 메소드를 호출하기 만하면됩니다. 마지막 조각으로 리디렉션하고 조각의 onResume()을 호출합니다. 선택한 날짜를 하나의 정적 변수에 저장합니다.

또 다른 방법은 :

같은 DatePicker에서 활동

int REC_CODE=2; 
startActivityForResult(new Intent(this,DataPic.class),REC_CODE); 

아래 코드 아래에 날짜를

쓰기를 선택한 후 날짜 선택 활동을 시작

Intent i = new Intent(); 
i.putExtra("date",selecteddate); 
setResult(RESULT_OK, i); 
finish(); 

위 코드를 excecuting하여 DatePick 작업을 마치면 다음 ovveride below 메서드입니다.

@Override 
public void onActivityResult(int requestCode, int resultCode, Intent data) 
{ 

    // TODO Auto-generated method stub 
    if(requestCode == REQ_CODE){ 
       if (resultCode == Activity.RESULT_OK){ 
        String date= data.getStringExtra("date"); 
} 
} 
+0

정확하게 iam을 사용하여 finish(); 현재 뒤로 횡단합니다. 하지만 내 단편에 대한 onResume() 메소드를 재정의해야하고 그 메소드에서 textview를 datetime으로 정적으로 저장하기 전에 업데이트해야한다고 말하는 것을 의미합니다. ??? –

+0

예, 당신은 onresume을 재정의해야합니다 – koti

+0

나는 더러운 해킹을 알고 있지만 일을 끝냈습니다. 고맙습니다 :) –

관련 문제