2010-06-15 20 views
-1

我新的Android和正在試圖創建一個計算並顯示用戶輸入兩個數字的GCF一個非常基本的應用程序。這裏是我的GCF.java的副本:未遂GCF應用爲Android

package com.example.GCF; 

import java.util.Arrays; 

import android.app.Activity; 
import android.os.Bundle; 
import android.view.View; 
import android.view.View.OnClickListener; 
import android.widget.Button; 
import android.widget.EditText; 
import android.widget.TextView; 

public class GCF extends Activity { 
private TextView mAnswer; 
    private EditText mA, mB; 
    private Button ok; 
    private String A, B; 
    private int iA, iB; 

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

     mA = (EditText) findViewById(R.id.entry); 
     mB = (EditText) findViewById(R.id.entry1); 
     ok = (Button) findViewById(R.id.ok); 
     mAnswer = (TextView) findViewById(R.id.answer1); 

     ok.setOnClickListener(new OnClickListener() { 
     public void onClick(View v) 
     {    
      A = mA.getText().toString(); 
      B = mB.getText().toString(); 
     } 
     }); 

     // the String to int conversion happens here 
     iA = Integer.parseInt(A.trim()); 
     iB = Integer.parseInt(B.trim()); 

     while (iA != iB) { 
     int[] nums={ iA, iB, Math.abs(iA-iB) }; 
     Arrays.sort(nums); 
      iA=nums[0]; 
     iB=nums[1]; 
     } 
     updateDisplay(); 
    } 
     private void updateDisplay() { 
      mAnswer.setText(
      new StringBuilder().append(iA)); 

     } 

} 

有什麼建議嗎?謝謝!

+1

有你有一個具體的問題?或者你只是在尋找代碼審查? – 2010-06-15 00:12:03

回答

0

你可能想這(爲你的onCreate功能)

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

    mA = (EditText) findViewById(R.id.entry); 
    mB = (EditText) findViewById(R.id.entry1); 
    ok = (Button) findViewById(R.id.ok); 
    mAnswer = (TextView) findViewById(R.id.answer1); 

    ok.setOnClickListener(new OnClickListener() { 
     public void onClick(View v) {    
      A = mA.getText().toString(); 
      B = mB.getText().toString(); 

      // the String to int conversion happens here 
      iA = Integer.parseInt(A.trim()); 
      iB = Integer.parseInt(B.trim()); 

      while (iA != iB) { 
       int[] nums={ iA, iB, Math.abs(iA-iB) }; 
       Arrays.sort(nums); 
       iA=nums[0]; 
       iB=nums[1]; 
       } 
       updateDisplay(); 
     } 
    }); 
}