2013-06-15 1 views
4

나는 LoginActivity와 RegisterActivity라는 두 가지 액티비티로 안드로이드 애플리케이션을 만들었다. "a href"태그를 사용하여 이들 사이를 전환해야합니다. 그래서 AndroidManifest.xml 파일에서이 작업을 수행했습니다. 동일한 패키지의 두 액티비티 간 Android 연결

<activity 
     android:name="com.example.test.RegisterActivity" 
     android:label="@string/app_name" > 
     <intent-filter> 
      <category android:name="android.intent.category.DEFAULT" /> 
      <action android:name="android.intent.action.VIEW" /> 
      <data android:scheme="com.example.test" /> 
     </intent-filter> 
    </activity> 

는 LoginActivity에서 난 그냥 RegisterActivity에 저를 얻을 것이다 내 string.This에 "A"태그를 추가 :

TextView register = (TextView) findViewById(R.id.registerLink); 
    register.setText(Html.fromHtml(
      "If you don't have an account " + 
      "<a href=\"com.example.test://getApplicationContext\">register</a> ")); 
    register.setMovementMethod(LinkMovementMethod.getInstance()); 

지금까지, 그것은 완벽하게 작동합니다. 그리고 나는 또한 링크를 사용하여 다시 내 LoginActivity에서 설정하려면 :

<activity 
     android:name="com.example.test.LoginActivity" 
     android:label="@string/app_name" > 
     <intent-filter> 
      <action android:name="android.intent.action.MAIN" /> 

      <category android:name="android.intent.category.LAUNCHER" /> 
     </intent-filter> 
     <intent-filter> 
      <action android:name="android.intent.action.VIEW" /> 
      <category android:name="android.intent.category.DEFAULT" /> 
         <data android:scheme="com.example.test" /> 
     </intent-filter> 
     </activity> 
<activity 

을 그리고 여기에 문제를 간다 : 를 그래서 다음, 난 AndroidManifest를 파일에 이런 짓을. RegisterActivity에서 나는 동일한 "href"값을 가지며 loginActivity로 돌아가고 싶지만 다시 RegisterActivity로 이동하게됩니다.

login = (TextView)findViewById(R.id.loginLink); 
    login.setText(Html.fromHtml(
      "If you already have an account please " + 
      "<a href=\"com.example.test://getApplicationContext\">login</a> ")); 
    login.setMovementMethod(LinkMovementMethod.getInstance()); 

나는이 두 가지 활동을 어떻게 다른지 알 수 없습니다. 어쩌면 ID 또는 일부 매개 변수가 도움이 될지 모르지만 어떤 매개 변수인지는 알 수 없습니다. 미리 감사드립니다! 누군가 나를 도울 수 있기를 바랍니다.

+0

이 봐 유무 : (http://www.sherif.mobi/2011/09/html-and-activity-links -in- textview.html) –

+0

고맙습니다. 그거였다! 내 의도 필터에 호스트와 스키마를 추가해야했습니다. 다시 감사합니다! – Dianna

답변

1

완벽을 기하기 위해 (단호한 인상을 받겠다.) 나는 아래 답변했다.

<a href= 링크에서 활동을 시작하려면 다음을 수행해야합니다 호스트와 계획에 정의되어

  1. 가 있는지 확인하여 manifest.xml
  2. 당신의 연결 지원 HTML
를 올바른 전화 걸기

manifest.xml

<activity android:name=".LoginActivity"> 
    <intent-filter> 
     <data android:host="loginactivity" android:scheme="my-scheme" /> 
     <action android:name="android.intent.action.VIEW" /> 
     <category android:name="android.intent.category.DEFAULT" /> 
     <category android:name="android.intent.category.BROWSABLE" /> 
    </intent-filter> 
</activity> 

T

login = (TextView)findViewById(R.id.loginLink); 
login.setText(Html.fromHtml(
     "If you already have an account please " + 
     "<a href=\"my-scheme://loginactivity\">login</a> ")); 
login.setMovementMethod(LinkMovementMethod.getInstance()); 

신용 보안관 elKhatib에 : 코드 암탉 (http://www.sherif.mobi/2011/09/html-and-activity-links-in-textview.html)