안드로이드 개발 질문/답변
(글 수 45,052)
안녕하세요^*^
지난 번에 거의 비슷한 질문을 올렸었답니다..
다른 방법도 찾아보던중 어려움이 있어 다시 질문합니다.
멘토 없이 구글에 의존하는 것이 참 한계가 많네요..
아래 테이블에서 예를들어 _ID가 5 일 때, 다른 액티비티의 레이아웃이 구현되도록 하고 싶은데요!
즉, 다음 버튼을 4번 눌렀을 때 다른 액티비티로 연결시키고 싶어요.
(첫 화면에 바로 테스트1이 출력됩니다)
그런데 _ID를 받아오기 위해 public int num; 을 정의하고
num = "SELECT _ID FROM story";
라고해서 if 문을 사용하려고 하니.......string값을 int로 쓸 수 없다며 오류가 납니다.
_ID값을 프로그램이 알게 하려면 어떻게 해야하나요?
역시 if(num==5); 는 말도 안 되는 것인가요ㅠㅠ
if문을 뭐라고 해야 될까요?
아시는 분 계시다면 미흡한 저를 좀 도와주셔용^^;;;;;;
package com.andro.project;
import android.app.Activity;
import android.database.Cursor;
import android.database.sqlite.SQLiteDatabase;
import android.os.Bundle;
import android.view.View;
import android.view.View.OnClickListener;
import android.widget.Button;
import android.widget.TextView;
public class story extends Activity {
TextView result; // 출력을 받는 부분
DBHelper dbHelper;
Button nextbt;
final static String dbName = "story.db";
final static int dbVersion = 1;
/** Called when the activity is first created. */
@Override
public void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.text);
// TODO Auto-generated method stub
result = new TextView(this);
dbHelper = new DBHelper(this, dbName, null, dbVersion);
SQLiteDatabase db;
String sql;
result = (TextView) findViewById(R.id.result);
db = dbHelper.getReadableDatabase();
sql = "SELECT text FROM story ";
final Cursor cursor = db.rawQuery(sql, null);
// 들어온 데이터들을 출력
if (cursor.getCount() > 0) {
if (cursor.moveToNext()) {
// DB를 순서대로 화면에 띄운다.
result.setText(String.format("\n %s", cursor.getString(0)));
// result.append(String.format("\n %s",
// cursor.getString(0))); 이렇게 하면 이전 db까지 남아있다.
} else
result.append("??");
}
else {
result.append("\n조회결과가 없습니다.");
}
nextbt = (Button) findViewById(R.id.nextbt);
nextbt.setOnClickListener(new OnClickListener() {
@Override
public void onClick(View v) {
// TODO Auto-generated method stub
cursor.moveToNext();
// Intent it = new Intent(story.this, choice.class); // 추가화면으로
// 이동
// startActivity(it);
result.setText(String.format("\n %s", cursor.getString(0)));
}
});
}
}




story 테이블에서 _id 만 빼오시는거니까 그냥 cursor에서 getint로 받아오면 되겠네요.
예제 중심의 학습도 매우 중요하지만, 아무것도 모르는 상태에서 하게 되면 한가지 문제를 해결하면 곧 또 혼자서 해결하지 못하는 상황이 나오게 됩니다. 트렌트에 맞게 안드로이드를 빨리 배워서 원하는걸 만들어보고 싶다는 생각도 좋지만, 기왕 네이티브를 하실 거라면
자바 기본서부터 읽어보시는게 어떨까 합니다. 주먹구구식으로 DB까지 다루려고 하는 열정이라면 기본서정도는 금방 읽으실거 같네요.
저도 초보인데 오지랖이라면 죄송합니다.