模仿新浪微博@某人/#話題的效果
阿新 • • 發佈:2019-01-25
1.
Pattern wikiWordMatcher = Pattern.compile("(http://|ftp://|https://|www.){0,1}[a-zA-Z0-9\\-\\.]+?\\.(org|edu|uk|hk|com|net|cn|me|tw|fr|be)[^\\s]*"); //定義正則表示式
String mentionsScheme = String.format("%s/?%s=",Constants.MENTIONS_SCHEMA, Constants.PARAM_UID); //格式化字串,指定跳轉意圖
Linkify.addLinks(textView, wikiWordMatcher, mentionsScheme); //將TextView的字串根據正則去替換為連結
2.
然後在清單檔案中修改要跳轉的Activity的意圖
<activity android:name="com.xxx.xx.XxxActivity">
<intent-filter>
<action android:name="android.intent.action.VIEW"/>
<category android:name="android.intent.category.DEFAULT"/>
<category android:name="android.intent.category.BROWSABLE"/>
<data android:scheme="scheme" android:host="host"/>
</intent-filter>
</activity>
3.
然後在跳轉的目標頁面通過 getIntent().getData().getQueryParameter("key");獲取引數後進行處理
ps:意圖中可以使用schema://host:port/path?key=value的方式來傳遞引數