我正在創建一個包含幾個textviews和幾個圖像視圖的小部件。Android,Widget,從小部件獲取所有組件
而當我想將字體應用於所有文本視圖時,我需要逐個使用ID 並相應地設置字體或顏色。
但是,如何從佈局中獲取所有文本視圖組件,以便 我可以通過迭代組件來爲它們設置顏色?
我正在創建一個包含幾個textviews和幾個圖像視圖的小部件。Android,Widget,從小部件獲取所有組件
而當我想將字體應用於所有文本視圖時,我需要逐個使用ID 並相應地設置字體或顏色。
但是,如何從佈局中獲取所有文本視圖組件,以便 我可以通過迭代組件來爲它們設置顏色?
試試這個
for(int i = 0; i < myLayout.getChildCount(); i++){
if(myLayout.getChildAt(i) instanceof TextView){
(TextView) myLayout.getChildAt(i).setTextColor(#FF0000);
}
}
與myLayout是你的ViewGroup
你知道的設置樣式textviews的可能性?請參閱'setTextAppearance()'方法。這是如果你設置所有視圖相同的風格。 – Ronnie
@ userSeven7s:如果我有5個文本視圖,並且我想將文本視圖內的文本顏色設置爲紅色顯示所有文本視圖,我必須做什麼是setTextColor(R.id.someTextView,Color.Red)。因此,如果我動態地知道小部件內部的組件(5個文本視圖),我正在探索遍歷5個文本視圖並將它們的顏色設置爲read 。 – Achilles