Warning: error_log(/data/www/wwwroot/hmttv.cn/caches/error_log.php): failed to open stream: Permission denied in /data/www/wwwroot/hmttv.cn/phpcms/libs/functions/global.func.php on line 537 Warning: error_log(/data/www/wwwroot/hmttv.cn/caches/error_log.php): failed to open stream: Permission denied in /data/www/wwwroot/hmttv.cn/phpcms/libs/functions/global.func.php on line 537 国产小视频在线观看免费,日韩在线不卡一区在线观看,日本护士撒尿xxxx视频

          整合營銷服務(wù)商

          電腦端+手機(jī)端+微信端=數(shù)據(jù)同步管理

          免費(fèi)咨詢熱線:

          Android中使用Html渲染的方式實(shí)現(xiàn)必填項(xiàng)前面的*號(hào)

          大家分享一個(gè),就是在Android開發(fā)中,使用Html渲染的方式實(shí)現(xiàn)必填項(xiàng)*號(hào),看這個(gè)怎么實(shí)現(xiàn);

          在給大家分享之前,這里推薦下我自己建的Android開發(fā)技術(shù)分享交流平臺(tái) :653961128,不管你是小白還是大牛,我都挺歡迎,不定期分享干貨,包括2017最新的Android企業(yè)案例學(xué)習(xí)資料和零基礎(chǔ)入門教程,歡迎初學(xué)和進(jìn)階中的小伙伴,大家一起交流學(xué)習(xí),共同進(jìn)步。


          項(xiàng)目的個(gè)人基本信息UI界面效果圖如下,有一個(gè)紅色的*號(hào),并且跟它挨著的文字顏色不一樣。我這里主要介紹一種有Html渲染的方式;

          1、Xml布局(只選取對(duì)應(yīng)的部分)

          這里的*符號(hào)和文字其實(shí)也是公用一個(gè)TextView

          2、創(chuàng)建對(duì)應(yīng)String資源

          這里可以單獨(dú)設(shè)置*符號(hào)和文字的顏色、加粗等操作

          <string name="tip_xinghao_nation">
           <Data>
           <![CDATA[<font color="#e60012"> *</font><font color="#189dde">民族 : </font>]]
           </Data>
          </string>

          3、java代碼中實(shí)現(xiàn)渲染

          到這里就可以實(shí)現(xiàn)效果圖里面的效果了,如果更改*符號(hào)和文字顏色和大小的時(shí)候,統(tǒng)一在String資源哪里更改就可以了。

          此次分享就到這里,如果大家有什么好的方法實(shí)現(xiàn)的話可以評(píng)論留言哦;喜歡我的可以關(guān)注我

          avaScript中共有2個(gè)個(gè)判斷相等的運(yùn)算符 == 和 ===。

          這2個(gè)運(yùn)算符的差別在于 == 在判斷相等的時(shí)候會(huì)進(jìn)行類型的轉(zhuǎn)換,而 === 則不會(huì)進(jìn)行類型轉(zhuǎn)換。

          一、=== 運(yùn)算符

          === 一般稱之為嚴(yán)格相等。用來判斷兩個(gè)操作數(shù)是否嚴(yán)格相等。

          判斷規(guī)則:

          1. 首先判斷兩個(gè)操作數(shù)的類型是否一致,如果不一致就直接認(rèn)為不等。

          2. 如果兩個(gè)操作數(shù)的類型一致,則再判斷內(nèi)容是否相等。

          "true" === true // 類型不一致, false

          "0" === 0 //類型不一致 false

          "1" === "1" //類型一致,并且內(nèi)容也一致。 true

          注意:

          1. 如果使用 === 判斷2個(gè)對(duì)象類型的數(shù)據(jù),則直接判斷這 2 個(gè)對(duì)象是否為同一個(gè)對(duì)象。

          2. 如果一邊是對(duì)象類型,一邊是基本類型則一定不等。

          {} === {} // 兩邊都是對(duì)象,但是不是同一個(gè)對(duì)象,所以 false

          [] === [] // 兩邊都是對(duì)象,但是不是同一個(gè)對(duì)象,所以 false

          [] === "" // 一變是對(duì)象類型,一邊是基本類型,所以false

          二、==運(yùn)算符

          ==運(yùn)算符判斷相等,由于涉及到類型的強(qiáng)制轉(zhuǎn)換,所以最為復(fù)雜。

          需要從4個(gè)方面來進(jìn)行分析:

          1. 兩邊都是基本類型,且類型相同

          2. 兩邊都是對(duì)象

          3. 兩邊都是基本類型,但是類型不同

          4. 一邊是基本類型,一邊是對(duì)象

          2.1兩邊都是基本類型,且類型相同

          這個(gè)最簡(jiǎn)單,就看內(nèi)容是否相等即可。

          2.2兩邊都是對(duì)象

          這個(gè)也簡(jiǎn)單,規(guī)則和 === 一樣,也是判斷兩個(gè)對(duì)象是否為同一個(gè)對(duì)象。

          2.3兩邊都是基本類型,但是類型不同

          這個(gè)規(guī)則比較復(fù)雜,很多人也記不住那么多的規(guī)則。

          經(jīng)過我的分析和總結(jié),其實(shí)這個(gè)規(guī)則只有一條:

          2.4一邊是基本類型,一邊是對(duì)象

          這個(gè)規(guī)則也比較復(fù)雜,需要以2.3的規(guī)則為基礎(chǔ)。

          經(jīng)過我的分析和總結(jié),其實(shí)規(guī)則只有 2 條:

          這種情況比較的時(shí)候,都是先把對(duì)象轉(zhuǎn)換成基本類型再去比較!

          1. 先調(diào)用對(duì)象的valueOf方法,如果返回值值是基本類型的數(shù)據(jù),就用這個(gè)返回的基本類型的數(shù)據(jù)去比較。

          2. 如果valueOf方法的返回值不是基本類型的數(shù)據(jù),則調(diào)用toString方法,然后使用toString的返回值進(jìn)行比較。

          注意:關(guān)于valueOf和toString方法的說明:

          1. 這個(gè)兩個(gè)方法是在Object.prototype對(duì)象中定義的,所以所有的對(duì)象都會(huì)繼承這兩個(gè)方法。

          2. 默認(rèn)情況下valueOf是返回的這個(gè)對(duì)象的本身(內(nèi)部其實(shí)是返回的this)。

          3. 默認(rèn)情況下toString返回的是字符串: [object Object]

          4. 但是有些內(nèi)置對(duì)象 覆寫 了這2個(gè)方法。

          console.log([1, 2].toString()); // "1,2" 返回的是數(shù)組的元素用,連接起來的字符串

          console.log(/a/gi.toString()); // "/a/gi" 正則表達(dá)式的字面量字符串

          console.log((function(){//注釋}).toString()); // "function(){//注釋}" 返回函數(shù)源碼

          console.log(new Number(10).toString()); // "10" 返回對(duì)應(yīng)的基本類型的字面量形式

          console.log(({}).toString()); // "[object Object]"

          看下面的代碼:

          var obj1 = {

          name : "李四"

          }

          /*

          true:

          解析: 一邊是對(duì)象,一邊是字符串。則會(huì)把對(duì)象轉(zhuǎn)換成基本類型。

          先看valueOf ,默認(rèn)返回的是 對(duì)象,所以再看toString 默認(rèn)返回的是 "[object Object]" 所以是true

          */

          console.log(obj1 == "[object Object]"); // true

          var obj1 = {

          name : "李四",

          valueOf : function (){

          return 1;

          }

          }

          /*

          true:

          解析: 一邊是對(duì)象,一邊是number。則會(huì)把對(duì)象轉(zhuǎn)換成基本類型。 先看valueOf ,返回的是 number類型 1,所以用這個(gè)返回值去比較。

          */

          console.log(obj1 == 1); // true

          var obj1 = {

          name : "李四",

          valueOf : function (){ //覆寫

          return {};

          },

          toString : function (){ // 覆寫

          return this.name;

          }

          }

          /*

          true:

          解析: 一邊是對(duì)象,一邊是String。則會(huì)把對(duì)象轉(zhuǎn)換成基本類型。 先看valueOf ,返回的是 對(duì)象,所以調(diào)用toString,返回的是字符串 "李四"。

          */

          console.log(obj1 == "李四"); // true

          var arr = [1, 2];

          /*

          true:

          解析: 一邊是對(duì)象,一邊是字符串。則會(huì)把對(duì)象轉(zhuǎn)換成基本類型。 先看valueOf ,默認(rèn)返回的是 對(duì)象,所以調(diào)用toString,返回的是字符串 "1,2"。

          */

          console.log(arr == "1,2"); // true

          var arr = [1, 2];

          arr.valueOf = function (){

          return true;

          }

          /*

          true:

          解析: 一邊是對(duì)象,一邊是字符串。則會(huì)把對(duì)象轉(zhuǎn)換成基本類型。 先看valueOf ,默認(rèn)返回的是 布爾值 true,然后把true轉(zhuǎn)換成number 1,

          右邊是字符串,然后把字符串轉(zhuǎn)換number 1

          所以true

          */

          console.log(arr == "1");

          三、總結(jié)

          ===一句話總結(jié):先看類型,類型相同再比較內(nèi)容。類型不同,直接false

          ==一句話總結(jié):不同基本類型,則都向numbe方向轉(zhuǎn),然后比較。 一邊對(duì)象一邊基本類型,則對(duì)象先調(diào)用valueOf,再調(diào)用toString來轉(zhuǎn)成基本類型,再比較。

          JavaScript中,我們可以使用正則表達(dá)式來匹配手機(jī)號(hào)的模式。以下是一個(gè)基本的手機(jī)號(hào)驗(yàn)證函數(shù),它可以用來檢查一個(gè)字符串是否符合中國大陸的手機(jī)號(hào)格式。中國大陸的手機(jī)號(hào)一般為11位數(shù)字,且以1開頭,第二位是3、4、5、6、7、8、9中的一個(gè),并且是13、14、15、16、17、18、19開頭的號(hào)碼。

          javascript


          function isValidChineseMobile(phone) {
            var regex = /^1[3-9]\d{9}$/;
            return regex.test(phone);
          }
          
          // 使用示例
          console.log(isValidChineseMobile("13800138000")); // 應(yīng)返回 true
          console.log(isValidChineseMobile("12345678900")); // 應(yīng)返回 false
          

          這個(gè)函數(shù)isValidChineseMobile接受一個(gè)字符串參數(shù)phone,使用正則表達(dá)式/^1[3-9]\d{9}$/進(jìn)行匹配。這個(gè)正則表達(dá)式的含義是:

          • ^ 表示字符串的開始
          • 1 表示手機(jī)號(hào)以1開頭
          • [3-9] 表示第二個(gè)數(shù)字可以是3到9中的任意一個(gè)
          • \d{9} 表示接下來是9個(gè)數(shù)字
          • $ 表示字符串的結(jié)束

          test方法是正則表達(dá)式的一個(gè)方法,它用于測(cè)試字符串是否匹配正則表達(dá)式。如果匹配,返回true,否則返回false。

          請(qǐng)注意,手機(jī)號(hào)規(guī)則可能會(huì)隨著時(shí)間和地區(qū)的不同而變化,所以這個(gè)正則表達(dá)式可能需要根據(jù)實(shí)際情況進(jìn)行調(diào)整。此外,這個(gè)函數(shù)只是一個(gè)基本的驗(yàn)證,它不考慮手機(jī)號(hào)的運(yùn)營商和地區(qū)的具體規(guī)則,也不檢查手機(jī)號(hào)是否真實(shí)注冊(cè)。在實(shí)際應(yīng)用中,你可能需要更復(fù)雜的驗(yàn)證邏輯,甚至可能需要與手機(jī)號(hào)服務(wù)提供商的API進(jìn)行交互來驗(yàn)證手機(jī)號(hào)的真實(shí)性。



          一個(gè)也不是很懂得人弄得,若有不對(duì)的地方還請(qǐng)海涵


          主站蜘蛛池模板: 一区高清大胆人体| 国产一区三区二区中文在线| 日韩精品无码一区二区三区AV| 亚洲av乱码中文一区二区三区| 国产天堂一区二区综合| 国产小仙女视频一区二区三区| 中文字幕不卡一区| 一区二区视频免费观看| 在线|一区二区三区| 伊人久久大香线蕉AV一区二区| 成人区精品人妻一区二区不卡 | 国内国外日产一区二区| 国产在线一区二区视频| 亚洲AV成人一区二区三区观看 | 亚洲国产日韩在线一区| 久久久久人妻精品一区蜜桃| 国产午夜精品一区理论片飘花 | 国模无码一区二区三区| 亚洲一区二区三区写真| 亚洲无码一区二区三区| 国产91精品一区二区麻豆网站| 91在线看片一区国产| 麻豆国产一区二区在线观看 | 日本一区二区三区不卡在线视频 | 一区二区三区视频观看| 日本一区二区高清不卡| 成人在线视频一区| 久久久久人妻一区精品 | 成人精品视频一区二区三区尤物| 国内精品一区二区三区东京| 日韩精品一区二区三区老鸭窝| 亚洲日韩国产欧美一区二区三区 | 日本内射精品一区二区视频| 日韩人妻一区二区三区免费| 2020天堂中文字幕一区在线观 | 无码少妇一区二区| 国产精品制服丝袜一区| 理论亚洲区美一区二区三区| 亚洲AV无码一区二三区| 精品一区二区三区免费| 亚洲一区二区三区免费在线观看|