当前位置: 代码迷 >> Android >> 小弟遇到有关问题了,各位大家帮帮忙!改下代码吧、多谢
  详细解决方案

小弟遇到有关问题了,各位大家帮帮忙!改下代码吧、多谢

热度:59   发布时间:2016-05-01 21:27:41.0
小弟遇到问题了,各位大家帮帮忙!改下代码吧、谢谢
我的代码是这样的
import android.app.Activity;

import android.content.Context;

import android.os.Bundle;
import android.telephony.PhoneStateListener;
import android.telephony.SignalStrength;

import android.telephony.TelephonyManager;
import android.widget.TextView;

public class SignaltestActivity extends Activity {
/** Called when the activity is first created. */



TelephonyManager Tel;
MyPhoneStateListener MyListener;

@Override
public void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.main);

TextView myText1 = (TextView) findViewById(R.id.myText1);

MyListener = new MyPhoneStateListener();
Tel = (TelephonyManager) getSystemService(Context.TELEPHONY_SERVICE);

myText1.setText("场强:");

Tel.listen(MyListener, PhoneStateListener.LISTEN_SIGNAL_STRENGTHS);
}

protected void onPause() {
super.onPause();
Tel.listen(MyListener, PhoneStateListener.LISTEN_NONE);

}

protected void onResume() {
super.onResume();
Tel.listen(MyListener, PhoneStateListener.LISTEN_SIGNAL_STRENGTHS);
}

private class MyPhoneStateListener extends PhoneStateListener {

@Override
public void onSignalStrengthsChanged(SignalStrength signalStrength) {
// TODO Auto-generated method stub
super.onSignalStrengthsChanged(signalStrength);

TextView myText2 = (TextView) findViewById(R.id.myText2);
myText2.setText(String.valueOf(-113 + 2
* signalStrength.getGsmSignalStrength()));

}

}

}

我怎么样写才能让myText2.setText(String.valueOf(-113 + 2* signalStrength.getGsmSignalStrength()));进行动态、实时刷新,我看了下大概是用线程来做,主要是我想让我的程序实时的更新信号强度,但是我我是初学者 还没有摸到 门路 请大家帮帮忙吧、谢谢

------解决方案--------------------
你目前这个代码是有什么问题呢?会崩溃还是没法实现?
------解决方案--------------------
Timer timer = new Timer(1, new ActionListener() {


public void actionPerformed(ActionEvent e)
{
la3.setText(s);
}



});
定时刷新
------解决方案--------------------
onSignalStrengthsChanged 方法不能够接收到实时更新?
------解决方案--------------------
onSignalStrengthsChanged你的监听器回调是不是在线程中回调的呢?如果是必然会出问题,android非UI线程不允许操作UI,可以在onSignalStrengthsChanged使用Handler把更新消息发送出来更新即可,关于Handler的用法不在赘述。
  相关解决方案