Android 需要使用不同例項的情況

2021-09-01 04:25:01 字數 586 閱讀 3302

android中,有些情況必須使用不同的例項,不能圖省事就是用同乙個例項,否則會出現莫名奇妙的問題,例如以下情況:

1.spannablestringbuilder:

一段字串需將其中括號裡面的字元替換成紅色,核心**如下:

final pattern highlight = pattern.compile("\\(.+?\\)");

matcher m = highlight.matcher(spannablestr.tostring());

while (m.find())

注意,必須使用new foregroundcolor(color.red),而不能在while迴圈外面建立乙個例項,然後在while迴圈裡面傳入,這樣所有設定會用到同乙個例項,只有最後乙個會生效,前面的不會生效(沒有深入研究機制)

2.設定背景:

比方說有幾個不同的控制項,然後有乙個您自己從shape類繼承的自定義類boardershape,如果幾個空間background相同,必須為每個控制項設定乙個new boardershape()例項,不能共用乙個,否則也會出問題。

3.應該還有其他類似情況,反正這種情況挺難除錯的,平常留心就可以了。

Pyrorch MNIST 使用不同優化器

import torch.nn.functional as f 選擇啟用函式 import torch.optim as optim 選擇優化器 import matplotlib.pyplot as plt 準備資料 batch size 64 trans transforms.compose t...

python遞迴需要使用self

在刷劍指offer的時候遇到合併鍊錶的題,使用python嘗試用遞迴方法來解,結果出現了global name merge is not defined的錯誤,原因是在遞迴呼叫的時候需要使用self.merge class listnode def init self,x self.val x se...

不同的使用者使用不同語種的Gnome

今天,忽發奇想,怎麼才能讓不同的使用者,使用不同語言的 gnome 比如 root 使用者,我讓他用英文的 gnome 但是可以用 fcitx 而使用者 wallace 我讓他用中文的 gnome。我實現用中文 gnome 靠的是這個檔案 etc x11 xsession.d 95input 內容是...