【问题标题】:warning: window already focused ignoring focus gain of com.android.internal.view. iinputmethod client $stub$proxy 4148db78警告:窗口已经聚焦,忽略 com.android.internal.view 的焦点增益。 iinputmethod 客户端 $stub$proxy 4148db78
【发布时间】:2013-01-24 15:18:57
【问题描述】:

我已经搜索并没有找到答案。我想调用 startActvity(newintent),但页面没有改变。 这是我的代码:

public class MainActivity extends Activity {
private TextView IdPeserta, Password;
//private ArrayList<NameValuePair> authentication;
@SuppressWarnings("unused")
//private String temp, _nama = "";
//private readURL rL;

public static String username = "";
public static String password = "";
public static String status = "FALSE";

public void setPassword(String password){
    MainActivity.password = password;
}

public void setUsername(String username){
    MainActivity.username = username;
}

public void setStatus(String status){
    MainActivity.status = status;
}

/** Called when the activity is first created. */
@Override
public void onCreate(Bundle savedInstanceState) {
    super.onCreate(savedInstanceState);
    requestWindowFeature(Window.FEATURE_NO_TITLE);
    getWindow().setFlags(WindowManager.LayoutParams.FLAG_FULLSCREEN, WindowManager.LayoutParams.FLAG_FULLSCREEN);
    setContentView(R.layout.main);
    IdPeserta = (TextView) findViewById(R.id.idPeserta);
    Password = (TextView) findViewById(R.id.password);
}    

public void Login(View view){
    setUsername(IdPeserta.getText().toString());
    setPassword(Password.getText().toString());
    if((IdPeserta.getText().length() > 0 && Password.getText().length() > 0)){
        RestTask task = new RestTask();
        task.applicationContext = MainActivity.this;
        task.execute();
    }else{
        Toast.makeText(this,"fill Id Peserta and Password 1", 0).show();
    }
}

public void authenticate(){
    if(status.equals("TRUE")){
        Intent i = new Intent(MainActivity.this, Home.class);
        //PendingIntent pending = PendingIntent.getActivity(this, 0, i, 0);
        startActivity(i);
        finish();
    }else if(status.equals("FALSE")){
        Log.d("gagal", "coba lagi");
    }
}

public static String getService() {

    String responseString = null;

    String baseurlString = "http://10.0.2.2:8080/UjianServices/authentikasi.php";

    RestClient client = new RestClient(baseurlString);
    client.AddParam("id_peserta", MainActivity.username);
    client.AddParam("password", MainActivity.password);

    try {
        client.Execute(RequestMethod.POST);
    } catch (Exception e) {
        Log.d("error", e.getMessage());
        //e.printStackTrace();
    }

    responseString = client.getResponse();

    return responseString;
}

public class RestTask extends  AsyncTask<Object, Object, Object>{
    private ProgressDialog dialog;
    protected Context applicationContext;

    @Override
    protected void onPreExecute() {
        this.dialog = ProgressDialog.show(applicationContext, "Calling", "Time Service...", true);
    }

    @Override
    protected void onPostExecute(Object result) {
        this.dialog.cancel();
        String status = result.toString();
        setStatus(status);
        authenticate();
    }

    @Override
    protected Object doInBackground(Object... arg0) {
        return MainActivity.getService();
    }
}

}

当我没有使用 RestTask 时,它可以更改页面。我如何改变我的活动?

【问题讨论】:

  • 发布您的 logcat 显示任何错误、堆栈跟踪等。

标签: android android-intent android-asynctask


【解决方案1】:

因为 applicationContext 为 null 您在使用 applicationContextonPreExecute 显示 ProgressDialog 之前尚未初始化。

在用于显示 ProgressDialog 之前,您需要初始化 applicationContext 或将 MainActivity.this 用作:

   @Override
    protected void onPreExecute() {
        applicationContext=MainActivity.this; //<<< initialize context here
        this.dialog = ProgressDialog.show(applicationContext, 
                                 "Calling", "Time Service...", true);
    }

【讨论】:

  • 我成功了。请参阅我的登录方法。我尝试在 onPreExecute() 方法中添加它,但结果是一样的。
  • @FaisalSilitonga:请在应用程序崩溃时发布完整日志
  • 应用程序不会崩溃,但活动不会改变。在 logcat 中有警告。警告说窗口已经集中忽略了 com.android.internal.view 的焦点增益。 iinputmethod 客户端 $stub$proxy 4148db78
  • @FaisalSilitonga 嘿,找到解决方案了吗?
猜你喜欢
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
相关资源
最近更新 更多