SORU
7 Mart 2012, ÇARŞAMBA


Android düğmesini Kullanmak için Klavye düğmesine Bitti

Benim app Tamam giriş için kullanıcı numarası için bir alan var. Yalnızca sayı kabul alan belirledik. Kullanıcı alanını tıklattığında klavye getiriyor. (ICS) klavye üzerinde yapılan bir düğme vardır. Klavyede bitti düğmesini için Gönder düğmesi uygulamam var tetikleyecek istiyorum. Benim kod aşağıdaki gibidir.

package com.michaelpeerman.probability;

import android.app.Activity;
import android.app.ProgressDialog;
import android.content.DialogInterface;
import android.content.DialogInterface.OnCancelListener;
import android.os.Bundle;
import android.os.Handler;
import android.os.Message;
import android.view.View;
import android.view.View.OnClickListener;
import android.widget.Button;
import android.widget.EditText;
import android.widget.TextView;
import java.util.Random;

public class ProbabilityActivity extends Activity implements OnClickListener {

private Button submit;
ProgressDialog dialog;
int increment;
Thread background;
int heads = 0;
int tails = 0;

public void onCreate(Bundle paramBundle) {
    super.onCreate(paramBundle);
    setContentView(R.layout.main);
    submit = ((Button) findViewById(R.id.submit));
    submit.setOnClickListener(this);
}

public void onClick(View view) {
    increment = 1;
    dialog = new ProgressDialog(this);
    dialog.setCancelable(true);
    dialog.setMessage("Flipping Coin...");
    dialog.setProgressStyle(ProgressDialog.STYLE_HORIZONTAL);
    dialog.setProgress(0);
    EditText max = (EditText) findViewById(R.id.number);
    int maximum = Integer.parseInt(max.getText().toString());
    dialog.setMax(maximum);
    dialog.show();
    dialog.setOnCancelListener(new OnCancelListener(){

          public void onCancel(DialogInterface dialog) {

              background.interrupt();
              TextView result = (TextView) findViewById(R.id.result);
                result.setText("heads : "   heads   "\ntails : "   tails);


          }});


    background = new Thread(new Runnable() {
        public void run() {
            heads=0;
            tails=0;
            for (int j = 0; !Thread.interrupted() && j < dialog.getMax(); j  ) {
                int i = 1   new Random().nextInt(2);
                if (i == 1)
                    heads  ;
                if (i == 2)
                    tails  ;
                progressHandler.sendMessage(progressHandler.obtainMessage());
            }
        }
    });
    background.start();
}

Handler progressHandler = new Handler() {
    public void handleMessage(Message msg) {

        dialog.incrementProgressBy(increment);
        if (dialog.getProgress() == dialog.getMax()) {
            dialog.dismiss();
            TextView result = (TextView) findViewById(R.id.result);
            result.setText("heads : "   heads   "\ntails : "   tails);


        }
    }

};

}

CEVAP
7 Mart 2012, ÇARŞAMBA


Bu da kullanabilirsiniz (bir eylem EditText gerçekleştirilen özel bir dinleyici çağrılacak ayarlar) BİTTİ ve geri DÖNMEK için: her ikisi de çalışıyor

max.setOnEditorActionListener(new OnEditorActionListener() {
        public boolean onEditorAction(TextView v, int actionId, KeyEvent event) {
            if ((event != null && (event.getKeyCode() == KeyEvent.KEYCODE_ENTER)) || (actionId == EditorInfo.IME_ACTION_DONE)) {
                Log.i(TAG,"Enter pressed");
            }    
            return false;
        }
    });

Bunu Paylaş:
  • Google+
  • E-Posta
Etiketler:

YORUMLAR

SPONSOR VİDEO

Rastgele Yazarlar

  • gadgetgal38

    gadgetgal38

    9 HAZİRAN 2009
  • Jimmie Jones

    Jimmie Jones

    16 Kasım 2007
  • Palmundo Ec

    Palmundo Ec

    11 HAZİRAN 2009