» »

[Android-Java] Zamenjal razred nato pa NullPointerException

[Android-Java] Zamenjal razred nato pa NullPointerException

draciel ::

Malo se hecam in delam pretvornik za android ki spremeni € v kune ter obratno =). Aplikacijo sem naredil ter je delovala. Vendar je bilo vse nametano v enemu razredu zato sem naredil nov razred, kjer se opravlja samo izračun. Vendar problem je ker ko pritisnem na tipko convert mi Vsili zaprtje aplikacije in Logcat mi javi NullPointerException. Prosim poglejte kje sem ga polomil..


CroToEu Razred
package com.eu.calculator;

import android.app.Activity;
import android.os.Bundle;
import android.view.MotionEvent;
import android.view.View;
import android.widget.ImageButton;
import android.widget.TextView;

public class CroToEur extends Activity {
	
	TextView resultView;

	@Override
	protected void onCreate(Bundle savedInstanceState) {
		// TODO Auto-generated method stub
		super.onCreate(savedInstanceState);
		setContentView(R.layout.cro_to_eur);
		
		final ImageButton convert = (ImageButton) findViewById(R.id.converButton);
		convertButton(convert);
	
		
	}


	private void convertButton(final ImageButton convert) {
		
		resultView = (TextView) findViewById(R.id.resultView);
		
		convert.setOnTouchListener(new View.OnTouchListener() {
			
			
			
			@Override
			public boolean onTouch(View v, MotionEvent event) {
				
				Calculate now = new Calculate();
				now.croToEu();
				
				
				if(event.getAction() == MotionEvent.ACTION_DOWN) {
					
					convert.setImageResource(R.drawable.convert_button_ontouch);	
					
					checkForEmptyEntry();
					
				} else if (event.getAction() == MotionEvent.ACTION_UP) {
					
					convert.setImageResource(R.drawable.convert_button);
				}
				return false;
			}
			
			
			
			private void checkForEmptyEntry() {


				if(Calculate.HRKfield.getText() == null || "".equals(Calculate.HRKfield.getText().toString())) {
					
					resultView.setText("You left empty field");
				} else {
				
				resultView.setText(Calculate.HRKfield.getText()+" HRK = "+Calculate.fixDecimal+" EUR");
				
				}
			}
		});
	}

	
}


Calculate razred ( kjer se opravi izračun )

package com.eu.calculator;

import java.math.BigDecimal;

import android.app.Activity;
import android.widget.EditText;


public class Calculate extends Activity {

	public static EditText HRKfield; 	//S tem dobimo vrednost iz polja edittext	
	public static double EUR = 0.133;//drži vrednost
	public static Double HRK;	// Možnost uporabe double za parsing
	public static double result; // rezultat
	public static BigDecimal fixDecimal; // rezultat pretvori na decimalko
	

public BigDecimal croToEu() {
		
	HRKfield = (EditText) findViewById(R.id.enterField);

		
		
		try {
			HRK = Double.parseDouble(HRKfield.getText().toString()); //tukaj dobimo čisto številko, ki jo uporabnik vnese v polje
			result = HRK * EUR;
			fixDecimal = new BigDecimal(result);
			fixDecimal = fixDecimal.setScale(2, BigDecimal.ROUND_HALF_UP);
		
		} catch (NumberFormatException e) {
			
		} 
		return fixDecimal;
	}
	
	
	
}

Spura ::

Calculate je v celoti napacno narejen in uporabljan. NullPointerException ti natancno pove v kateri vrstici je napaka.

Predvidevam da ti
HRK = Double.parseDouble(HRKfield.getText().toString());
vrze exception ker je HRKfield null.

draciel ::

sem že rešil. problem je bil ker je metoda croToEu vračala NULL..


Vredno ogleda ...

TemaSporočilaOglediZadnje sporočilo
TemaSporočilaOglediZadnje sporočilo
»

Android - Začetnik

Oddelek: Programiranje
111781 (1106) hurlimannxt
»

android črta

Oddelek: Programiranje
412399 (1670) g333kk
»

[android] vstavljanje slike

Oddelek: Programiranje
71240 (1137) messi
»

[android] crash

Oddelek: Programiranje
61338 (1147) messi
»

[Android] Kaj metoda vrne?

Oddelek: Programiranje
6920 (758) virusss8

Več podobnih tem