2016-07-09 33 views
1

ボタンがいくつかありますが、一定の時間が経過するとボタンのオーバーレイ色を変更します。反応ネイティブの下地色を動的に変更します

クラスが読み込まれると、配列内のボタンが作成されます。

makeData(){ 
for (var j = 0; j < 7; j++){ 
var temparraybuttons = []; 
for (var i = 0; i < 7; i++) { 

temparraybuttons.push(<TouchableHighlight onPress={this.clicked.bind(this, (j*7)+i+1)} 
        style style={styles.circle} 
        underlayColor="#FF00FF"> 
         <View> 
          <Text style={styles.number}> 
           {(j*7)+i+1} 
          </Text> 
         </View> 
        </TouchableHighlight>); 
       } 
       arrayButtons.push(temparraybuttons); 
      } 
     } 

しかし、今度は一度それらが後で作成されると、配列をループしてすべてのアンダーレイの色を変更したいのですか?

+0

あなたが持っているボタンの数がわかっている場合は、私は州をお勧めしたいと思います。つまり、5つのボタンがあるとします。一定の間隔の後、5つのボタンのアンダーレイの色を変更したいですか?あなたの質問を正しく理解していますか? –

+0

私は49のボタンを持っていて、6を押した後、私はアンダーレイの色を変更したいです –

+0

それらのすべてについては? –

答えて

0

カウント用のクラス変数を作成できます。状態変数からunderlayColorカラーを取得します。ユーザがボタンを押す度にカウント変数が更新されます。 count変数が6に達した場合、状態のunderlayColorを更新します。

+0

レンダリングメソッドでボタンを作成する必要はありますか?今はクラスが開くときにボタンを作成していますので、状態変数を変更してもアンダーレイの色は変わりません。 –

+0

コードを投稿できますか? –

+0

もちろんちょっと待ってください。クラスはちょっと混乱していますので、質問に関連する部分を試してみたい –

関連する問題