富文本實現(xiàn)用戶協(xié)議和隱私權限

實現(xiàn)顏色的效果:

setSpan(Object what,int start,int end,int flags):
參數(shù)一:表示樣式若未,上面的ForegroundColorSpan就是一種樣式,常用的樣式如下:
ForegroundColorSpan:為文本設置前景色;
BackgroundColorSpan:為文本設置文本背景色扛邑;
RelativeSizeSpan:為文本設置相對應大小荣德,在TextView原有的文字大小的基礎上,相對設置文字大忻涝滴;
StrikethroughSpan:為文本設置中劃線,也就是常說的刪除線胶台;
UnderlineSpan:為文本設置下劃線歼疮;
SuperscirptSpan:為文本設置上標,可以配合RelativeSizeSpan做數(shù)學公式中的上標诈唬;
SubscriptSpan:為文本設置下標腋妙;
StyleSpan:為文本設置(粗體、斜體)風格讯榕;
ImageSpan:將文本替換為圖片骤素;
ClickableSpan:為文本設置點擊事件;
URLSpan:為文本設置超鏈接愚屁。
參數(shù)二和三济竹,start表示需要設置的格式的子字串的起始下標,end表示終止下標霎槐。
參數(shù)四:flag表示子字串是否包含開始或結束端點:
Spanned.SPAN_EXELUSIVE_EXCLUSIVE---不包含兩端start和end所在的端點--(a,b);
Spanned.SPAN_EXCLUSIVE_INCLUSIVE---不包含端start,但包含end所在的端點--(a,b];
Spanned.SPAN_INCLUSIVE_EXCLUSIVE --- 包含兩端start送浊,但不包含end所在的端點 --- [a,b);
Spanned.SPAN_INCLUSIVE_INCLUSIVE --- 包含兩端start和end所在的端點 --- [a,b]丘跌。

 //授權協(xié)議
private void openPop() {
    if(alertDialog == null) {
        View view = LayoutInflater.from(this).inflate(R.layout.layout_pop, null);
        /*view.getBackground().setAlpha(0);//0~255透明度值
        view.setBackgroundAlpha(0.5f)*/

        alertDialog = new AlertDialog.Builder(this)
                .setView(view)
                .setCancelable(false)
                .create();
        TextView txtWord = view.findViewById(R.id.txt_word);
        TextView txtCancel = view.findViewById(R.id.txt_cancel);
        TextView txtOk = view.findViewById(R.id.txt_ok);
        txtCancel.setOnClickListener(new View.OnClickListener() {
            @Override
            public void onClick(View v) {
                alertDialog.dismiss();
                alertDialog = null;
            }
        });
        txtOk.setOnClickListener(new View.OnClickListener() {
            @Override
            public void onClick(View v) {
                alertDialog.dismiss();
                alertDialog = null;
            }
        });
        String str1 = "請你務必審慎閱讀袭景、充分理解\"服務協(xié)議\"和\"隱私政策\"各條款,包括但不限于:為你提供及時通訊闭树、內容分享等服務耸棒,我們需要收集你的設備信息、操作日志等個人信息报辱。你可以在\"設置\"中查看与殃、變更、刪除個人信息并管理你的授權。你可閱讀";
        String str2 = "《智匯平臺用戶使用協(xié)議》";
        String str3 = "《隱私協(xié)議》";
        SpannableStringBuilder builder = new SpannableStringBuilder();
        builder.append(str1);
        SpannableString spannableString = new SpannableString(str2);
        alertDialog.getWindow().setBackgroundDrawableResourec(android.R.color.transparent);//去白邊加這一行就可以了
        spannableString.setSpan(new ClickableSpan() {
            @Override
            public void onClick(@NonNull View widget) {
                Toast.makeText(WXLoginActivity.this, "智匯平臺使用協(xié)議", Toast.LENGTH_SHORT).show();
                Intent intent = new Intent(WXLoginActivity.this, WebActivity.class);
                intent.putExtra("url", "http://wx.zhihuixm.cn/user.html");
                startActivity(intent);
            }
            @Override
            public void updateDrawState(TextPaint ds) {
                ds.setUnderlineText(false);//                super.updateDrawState(ds);
            }

        }, 0, str2.length(), Spanned.SPAN_EXCLUSIVE_EXCLUSIVE);
        spannableString.setSpan(new ForegroundColorSpan(Color.RED), 0, str2.length(), Spanned.SPAN_EXCLUSIVE_EXCLUSIVE);
        builder.append(spannableString);
        builder.append("和");
        SpannableString spannableString2 = new SpannableString(str3);

        spannableString2.setSpan(new ClickableSpan() {
            @Override
            public void onClick(@NonNull View widget) {
                Toast.makeText(WXLoginActivity.this, "隱私協(xié)議", Toast.LENGTH_SHORT).show();
                Intent intent = new Intent(WXLoginActivity.this, WebActivity.class);
                intent.putExtra("url", "http://wx.zhihuixm.cn/secret.html");
                startActivity(intent);
            }
            @Override
            public void updateDrawState(TextPaint ds) {
                ds.setUnderlineText(false);//                super.updateDrawState(ds);
            }
        }, 0, str3.length(), Spanned.SPAN_INCLUSIVE_EXCLUSIVE);
        spannableString2.setSpan(new ForegroundColorSpan(Color.RED), 0, str3.length(), Spanned.SPAN_EXCLUSIVE_EXCLUSIVE);
        builder.append(spannableString2);
        builder.append("了解詳情信息幅疼。如你\"同意\"米奸,請點擊同意開始\r\n接受我們的服務");
        txtWord.setText(builder);
        // 設置行間距       txtWord.setMovementMethod(LinkMovementMethod.getInstance());

        alertDialog.show();
    }
}
xml布局
android:background="@drawable/pop_shapes"http://在父布局添加


<TextView
    android:id="@+id/txt_title"
    android:layout_width="299dp"
    android:layout_height="40dp"
    android:gravity="center"
    android:text="使用協(xié)議和隱私協(xié)議"
    android:textColor="#000000"
    android:textSize="18sp"
    app:layout_constraintEnd_toEndOf="parent"
    app:layout_constraintTop_toTopOf="parent"></TextView>

<TextView
    android:id="@+id/txt_word"
    android:layout_width="263dp"
    android:layout_height="214dp"
    android:layout_marginLeft="@dimen/msize_18"
    android:layout_marginRight="@dimen/msize_18"
    android:background="@drawable/pop_shapes"
    android:gravity="top"
    android:textSize="15sp"
    app:layout_constraintHorizontal_bias="1.0"
    app:layout_constraintLeft_toLeftOf="parent"
    app:layout_constraintRight_toRightOf="parent"

    app:layout_constraintTop_toBottomOf="@id/txt_title"></TextView>

<android.support.constraint.ConstraintLayout

    android:id="@+id/layout_btns"
    android:layout_width="match_parent"
    android:layout_height="50dp"
    app:layout_constraintBottom_toBottomOf="parent">
<TextView
    android:id="@+id/txt_cancel"
    android:layout_width="0dp"
    android:layout_height="match_parent"
    android:text="暫不使用"
    android:textColor="#333333"
    android:textSize="14sp"
    android:gravity="center"
    android:background="@drawable/drawable_btn_broder_left"
    app:layout_constraintLeft_toLeftOf="parent"
    app:layout_constraintTop_toTopOf="parent"
    app:layout_constraintRight_toLeftOf="@id/txt_ok"></TextView>
<TextView
    android:id="@+id/txt_ok"
    android:layout_width="0dp"
    android:layout_height="match_parent"
    android:text="確定"
    android:textColor="#E83B4d"
    android:textSize="14sp"
    android:gravity="center"
    android:background="@drawable/drawable_btn_broder_right"
    app:layout_constraintRight_toRightOf="parent"
    app:layout_constraintTop_toTopOf="parent"
    app:layout_constraintLeft_toRightOf="@id/txt_cancel"></TextView>
</android.support.constraint.ConstraintLayout>
最后編輯于
?著作權歸作者所有,轉載或內容合作請聯(lián)系作者
  • 序言:七十年代末,一起剝皮案震驚了整個濱河市爽篷,隨后出現(xiàn)的幾起案子悴晰,更是在濱河造成了極大的恐慌,老刑警劉巖逐工,帶你破解...
    沈念sama閱讀 211,639評論 6 492
  • 序言:濱河連續(xù)發(fā)生了三起死亡事件铡溪,死亡現(xiàn)場離奇詭異,居然都是意外死亡钻弄,警方通過查閱死者的電腦和手機佃却,發(fā)現(xiàn)死者居然都...
    沈念sama閱讀 90,277評論 3 385
  • 文/潘曉璐 我一進店門,熙熙樓的掌柜王于貴愁眉苦臉地迎上來窘俺,“玉大人饲帅,你說我怎么就攤上這事×隼幔” “怎么了灶泵?”我有些...
    開封第一講書人閱讀 157,221評論 0 348
  • 文/不壞的土叔 我叫張陵,是天一觀的道長对途。 經常有香客問我赦邻,道長,這世上最難降的妖魔是什么实檀? 我笑而不...
    開封第一講書人閱讀 56,474評論 1 283
  • 正文 為了忘掉前任惶洲,我火速辦了婚禮,結果婚禮上膳犹,老公的妹妹穿的比我還像新娘恬吕。我一直安慰自己,他們只是感情好须床,可當我...
    茶點故事閱讀 65,570評論 6 386
  • 文/花漫 我一把揭開白布铐料。 她就那樣靜靜地躺著,像睡著了一般豺旬。 火紅的嫁衣襯著肌膚如雪钠惩。 梳的紋絲不亂的頭發(fā)上,一...
    開封第一講書人閱讀 49,816評論 1 290
  • 那天族阅,我揣著相機與錄音篓跛,去河邊找鬼。 笑死耘分,一個胖子當著我的面吹牛举塔,可吹牛的內容都是我干的绑警。 我是一名探鬼主播求泰,決...
    沈念sama閱讀 38,957評論 3 408
  • 文/蒼蘭香墨 我猛地睜開眼央渣,長吁一口氣:“原來是場噩夢啊……” “哼!你這毒婦竟也來了渴频?” 一聲冷哼從身側響起芽丹,我...
    開封第一講書人閱讀 37,718評論 0 266
  • 序言:老撾萬榮一對情侶失蹤,失蹤者是張志新(化名)和其女友劉穎卜朗,沒想到半個月后拔第,有當?shù)厝嗽跇淞掷锇l(fā)現(xiàn)了一具尸體,經...
    沈念sama閱讀 44,176評論 1 303
  • 正文 獨居荒郊野嶺守林人離奇死亡场钉,尸身上長有42處帶血的膿包…… 初始之章·張勛 以下內容為張勛視角 年9月15日...
    茶點故事閱讀 36,511評論 2 327
  • 正文 我和宋清朗相戀三年蚊俺,在試婚紗的時候發(fā)現(xiàn)自己被綠了。 大學時的朋友給我發(fā)了我未婚夫和他白月光在一起吃飯的照片逛万。...
    茶點故事閱讀 38,646評論 1 340
  • 序言:一個原本活蹦亂跳的男人離奇死亡泳猬,死狀恐怖,靈堂內的尸體忽然破棺而出宇植,到底是詐尸還是另有隱情得封,我是刑警寧澤,帶...
    沈念sama閱讀 34,322評論 4 330
  • 正文 年R本政府宣布指郁,位于F島的核電站忙上,受9級特大地震影響,放射性物質發(fā)生泄漏闲坎。R本人自食惡果不足惜疫粥,卻給世界環(huán)境...
    茶點故事閱讀 39,934評論 3 313
  • 文/蒙蒙 一、第九天 我趴在偏房一處隱蔽的房頂上張望腰懂。 院中可真熱鬧梗逮,春花似錦、人聲如沸悯恍。這莊子的主人今日做“春日...
    開封第一講書人閱讀 30,755評論 0 21
  • 文/蒼蘭香墨 我抬頭看了看天上的太陽涮毫。三九已至瞬欧,卻和暖如春,著一層夾襖步出監(jiān)牢的瞬間罢防,已是汗流浹背艘虎。 一陣腳步聲響...
    開封第一講書人閱讀 31,987評論 1 266
  • 我被黑心中介騙來泰國打工, 沒想到剛下飛機就差點兒被人妖公主榨干…… 1. 我叫王不留咒吐,地道東北人野建。 一個月前我還...
    沈念sama閱讀 46,358評論 2 360
  • 正文 我出身青樓属划,卻偏偏與公主長得像,于是被迫代替她去往敵國和親候生。 傳聞我的和親對象是個殘疾皇子同眯,可洞房花燭夜當晚...
    茶點故事閱讀 43,514評論 2 348