안녕하세요 안드로이드 초보자입니다.
스피너의 선택값을 onclick함수에 보여주려고 하는데 자꾸 nullpoint에러가 나네요
그리고 특정홈페이지의 소스도 보여주는 부분이 작동되지 않아 고민고민하다 이렇게 글을 씁니다.
1. 책에서 예제를 돌렸을때는
String str_local = spinner.getSelectedItem().toString();
이 코드에 아무런 문제가 없이 잘 실행되는 반면 제 프로젝트에 삽입했을때에는 자꾸 프로그램이 꺼지는 에러가 뜹니다.
logcat에는 nullpoint에러라고 뜹니다.
2. 특정 홈페이지에 들어가서 소스를 불러오는 부분도 작동되지 않고 있어요 ㅠ
제가 무엇을 잘못하고 있는건가요.. ㅠ_ㅠ
하루종일 한줄도 코딩하지 못하고 있는 상태입니다... 힝 ㅠㅠ
코드는 다음과 같습니다.
package com.example.graduate_project;
import java.io.BufferedInputStream;
import java.io.BufferedReader;
import java.io.InputStream;
import java.io.InputStreamReader;
import java.net.HttpURLConnection;
import java.net.URL;
import android.view.View;
import android.view.View.OnClickListener;
import android.widget.Button;
import android.widget.EditText;
import android.os.Bundle;
import android.app.Activity;
import android.app.AlertDialog;
import android.widget.ArrayAdapter;
import android.widget.Spinner;
public class Main extends Activity implements OnClickListener{
Spinner spinner;
@Override
public void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_main);
//스피너 출력시작
ArrayAdapter<CharSequence> adapter= ArrayAdapter.createFromResource(this, R.array.localArr, android.R.layout.simple_spinner_dropdown_item);
adapter.setDropDownViewResource(android.R.layout.simple_spinner_dropdown_item);
Spinner spinner=(Spinner)findViewById(R.id.spinner_local);
spinner.setAdapter(adapter);
//button 생성
Button btn = (Button)findViewById(R.id.btn_send);
btn.setOnClickListener(this);
}
//button 클릭시 반응
@Override
public void onClick(View v) {
String str_local = spinner.getSelectedItem().toString();
AlertDialog.Builder alert = new AlertDialog.Builder(this);
alert.setTitle(strlocal);
alert.show();
EditText et_web_src = (EditText)findViewById(R.id.web_src);
URL url = null;
HttpURLConnection urlConnection = null;
BufferedInputStream buf = null;
try{
urlConnection = (HttpURLConnection) url.openConnection();
buf = new BufferedInputStream(urlConnection.getInputStream());
BufferedReader bufreader = new BufferedReader(new InputStreamReader(buf, "euc-kr"));
String line = null;
String page = null;
while ((line=bufreader.readLine()) !=null){
page += line;
}
et_web_src.setText(page);
} catch(Exception e){
et_web_src.setText(e.getMessage());
} finally {
urlConnection.disconnect();
}
}
}