我在 if(string == "orange"){
String[] word = { " AA\n", "AB\n" };
degrees.setText(Arrays.toString(word).replaceAll("\\[|\\]", ""));;
image.setImageResource(R.drawable.bruce);
}
}
public void sentText(){
new MyTask().execute();
}
private class MyTask extends AsyncTask<String, String, String> {
@Override
protected String doInBackground(String... strings) {
Bundle b = getArguments();
stringtext = b.getString("text");
return null;
}
protected void onPostExecute(String result){setText(stringtext);
}
}
}
旁边有一个按钮,按下时会增加其计数器。
TextInput
每次点击按钮时,它当前增加1。我想要实现的是只要用户按下它就不断增加计数器。
我尝试使用 <TouchableWithoutFeedback onPress={() => {this.increaseAmount(step, rowID)}}>
<View style={styles.amountPlusButtonContainer}>
<Text style={styles.amountButtonText}>+</Text>
</View>
</TouchableWithoutFeedback>
,但我不确切知道何时停止此问题,也不知道该问题是否正确。
答案 0 :(得分:4)
我认为使用#home-header .info-shortcuts {
width: 1140px;
margin: 0 auto;
display: block;
position: relative;
}
是一个很好的解决方案。
致电onPressIn上的setInterval
和onPressOut上的setInterval
。
答案 1 :(得分:1)
我能够使用Animated
API使其工作。我使用的参考文献(官方文档除外)是http://browniefed.com/blog/react-native-press-and-hold-button-actions/
var ACTION_TIMER = 3000;
var listenerActive = true;
getInitialState(){
return{
pressAction: new Animated.Value(0),
value: 0,
};
},
componentWillMount: function() {
this.state.pressAction.addListener((v) => this.setState({value: v.value}));
},
handlePressIn: function() {
if(!listenerActive) {
this.state.pressAction.addListener((v) => this.setValueAndChangeAmount(v.value));
listenerActive = true;
}
Animated.timing(this.state.pressAction, {
duration: ACTION_TIMER,
toValue: 67,
}).start();
},
handlePressOut: function() {
this.state.pressAction.removeAllListeners();
this.setState({pressAction: new Animated.Value(Math.ceil(this.state.value))});
listenerActive = false;
},
我使用了3000ms和Math.ceil来保持与onPress
相同的行为,因为它不能与onPressIn
和onPressOut
一起使用。
在handlePressOut
中删除侦听器会停止计数器。使用pressAction
设置新的this.state.value
会将值重置为计数器停止的值。