2014-05-21 5 views
0

내 안드로이드 라이브러리에서 사용자에게 활동의 이름을 입력하는 edittext를주었습니다. 이동해야합니다. 즉, 나는 안드로이드 앱의 모든 활동을 알지 못합니다.의도를 사용하여 다른 활동으로 이동

String name_activity=Activityedit.getText(); 
Intent in=new Intent(Dform.this, ?); 

나는 "name_activity" 감사의

솔루션을 통해 활동에 응용 프로그램을 이동하려면 어떻게해야하나요 :

String intent_redirect=getPackageName()+"."+Activityedit.getText(); 
       Class<?> c = null; 
        try { 
        c = Class.forName(intent_redirect); 
       } catch (ClassNotFoundException e) { 
        // TODO Auto-generated catch block 
        e.printStackTrace(); 
       } 
       Intent in =new Intent(DialForm.this,c); 
       startActivity(in); 
+0

그리고 당신의 모든 활동은 어떻습니까? 'manifest.xml'에 등록 했습니까? –

+0

라이브러리이므로 사용자가 manifest.xml에 등록해야합니다. – Ghitay

+0

@ 감사합니다. – Ghitay

답변

1

그 시도 :

Class cls=Activityedit.class; 
Intent in=new Intent(Dform.this, cls); 
startActivity(in); 
0

이것은 불가능합니다. 문자열에서 클래스로 캐스트 할 수 없습니다.

+0

편집을 확인하십시오. 가능합니다. 감사합니다. – Ghitay

1

나는이 권리를 얻고 있습니까? 런타임 중에 활동을 만들고 싶습니까? 이것은 불가능합니다. 그리고 왜 이것을하고 싶습니까?

+0

당신은 절대적으로 옳습니다. +1 –

+5

당신의 대답은 저에게 코멘트와 같습니다. –

+0

글쎄, 당신은 어떤면에서 맞을지도 모릅니다. 그러나 그의 질문에 대한 간단한 대답은 불가능하다는 것입니다. 그는 단지 그것을 받아 들일 수 있고이 질문을 닫을 수 있습니다. – PKlumpp

관련 문제