2012-04-25 2 views
0

Theme.Dialog가있는 활동을 사용하여 소프트웨어 키보드를 에뮬레이션하려고합니다. 키보드 활동은 화면의 일부만을 포함합니다. 기본 활동은 여전히 ​​활동 중이며 직접 제어 할 수 있습니다. 입력 된 텍스트가 입력 될 때 기본 액티비티에 표시되도록하고 싶습니다.하나의보기에서 다른보기 업데이트

내가 할 수있는 방법이 있습니까? 내 EditText에 대한 참조를 Intent Bundle에 던지려고 생각했지만 올바른 것 같지 않습니다.

편집 : 누군가가 EditText를 정적으로 만들기 위해 응답했지만 응답을 삭제했습니다. 이것이 올바른 응답으로 밝혀지면 다시 추가 할 수 있습니까?

답변

0

난 내 자신의 질문에 대답 해요 mainactivity 형식 컨텍스트를 캐스팅 할 필요는 mainactivity의 context.for를 사용하여 주요 활동에서 변수를 ACESS 수 있습니다 사용하는 경우 때문에 원본을 제공 한 사람 대답을 삭제하고 다시 게시하지 않았습니다.

지금까지 편집 된 EditText를 참조하는 소프트웨어 키보드 활동에 정적 필드를 만드는 것이 가장 좋은 해결책이었습니다. 그런 다음 호출하는 액티비티는 인 텐트를 시작하기 전에이 정적 필드를 업데이트합니다.

이것은 원활하게 작동하며 호출 활동이 스택에서 폭발적으로 발생하는 데 아무런 문제가 없었습니다.

2

그것은 ... .. 당신의 활동은 당신이 그것을 시도하지 않습니다 .. 그것은 확실히 예외가 발생합니다 뭔가를 호출하려고 .. 일시 정지 상태가됩니다 .. 대신 onActivityResult()을 시도 작동하지 않습니다

: 편집

그럼 이것을 시도 ..

다음 활동 인스턴스를 (내가 편집 텍스트가 활동을 의미) 얻을

if(!yourActviity.isFinishing()) 
{ 

((EditText)yourActviity.findViewById(R.id.editText)).setText("text"); 
} 
+0

일시 중지 상태가 아닙니다. 기본 활동과 직접 상호 작용할 수 있습니다. –

+0

@AndrewP. .. UI와 관련된 상호 작용 ..? – ngesh

+0

@sandy, 예. 네이티브 호출을 만들고 UI를 결과로 올바르게 업데이트하는 기본 활동의 버튼을 클릭 할 수 있습니다. –

1

u는 사용자 정의 대화 상자가 u는 u는

+0

사용자 지정 대화 상자를 사용하고 있지 않지만 Theme.Dialog를 테마로 사용자 지정 활동을 사용하고 있습니다. –

+0

맞춤 활동 코드를 붙여 넣으세요. –

관련 문제