0

我正在开发应用程序。获取信息。关于来电者的号码。我在检查信息时遇到了一个小问题。关于来电者,手机没有显示基本的来电屏幕。我想显示一个带有一个额外标签的来电屏幕。首先标签的文本将是“正在搜索”,在我得到搜索结果后,我想根据信息更改标签的文本。我发现。我尝试使用 phoneScreenPortrait.updateDisplay(),但没有任何反应。

编码:

public void callIncoming(int callId)
{
    ScreenModel screenModel = new ScreenModel(callId);
    PhoneScreen phoneScreenPortrait = screenModel.getPhoneScreen(PhoneScreen.PORTRAIT, PhoneScreen.INCOMING);

String resName = "";
String callNum = Phone.getCall(callId).getDisplayPhoneNumber();

if( Phone.getCall(callId).getContact() != null ) //Contact found
{
    screenModel.sendAllDataToScreen();
    return;
}

LabelField callerName;
callerName = new LabelField( "Searching" ) 
{
    public void paint(Graphics g) 
    {
        g.setColor(Color.WHITE);
        super.paint(g);
    }
}; 

callerName.setFont(phoneScreenPortrait.getCallerInfoFont());
phoneScreenPortrait.add(callerName);

screenModel.sendAllDataToScreen();

try
{
    resName = getName( callNum ); // Get's the name with my function
}
catch( Exception ex )
{
    System.out.println(ex.toString());
}

if( resName == null )
    resName = "No match..";

callerName.setText( resName );
phoneScreenPortrait.updateDisplay();

}

谢谢, 罗特姆

4

1 回答 1

1

好的,我设法自己解决了..

设置 LabelField 的文本后,我添加了这些行:

phoneScreen.updateDisplay();
phoneScreen.doPaint();
screenModel.sendAllDataToScreen();

于 2012-06-03T12:03:24.183 回答