문제 해결 6

[Android, SQL] SQLite에서 MAX값 받아오면서 생긴 오류

단어 앱을 만들면서 단어시험 기록을 불러와 가장 최근에 친 시험기록을 받아오는 과정에서 실수한 부분이 있어서 꽤나 고생했다. 평범하게 생각해서 시험 기록중 MAX값을 얻어오면 된다 생각했고, 다음과 같은 쿼리문을 작성했다. SELECT MAX(test_date) FROM word_test 여기서 문제점 : 만약에 단어를 처음 등록한 날이면 다른 로직이 적용되야 되야 됬었다. 그래서 만약 word_test 테이블에 아무 값도 없을 경우를 판단해야 됬는데 이때 내가 MAX로 받아 놓고 getCount() 함수를 이용해서 값이 0이면 테이블이 비어있을 것이라 생각했던 점이 큰 실수였다. 테이블에 값이 하나도 없을경우 MAX로 받으면 0값이 리턴되고, getCount()값은 항상 1이 나오게 된다. 그래서 스택..

문제 해결 2018.09.07

[Android] ViewHolder 패턴을 사용하면서 생긴 오류 문제해결

SQLiteDatabase에서 값을 받아 Custom ListView를 만들어 보여주는 액티비티를 작성하던 중에 Viewholder가 null reference 에러가 나는 상황이 발생했다. ViewHolder 패턴을 이용한지 얼마 되지 않아서 오타나 놓친 부분이 있을것이라 생각되어 꼼꼼히 코드를 다 살펴 봤지만 오류가나는 리스트뷰와 정상적으로 동작하는 다른 리스트뷰 코드와 차이점이 전혀 보이질 않았다. 꽤 오래 씨름을 하고 난뒤 다른 부분을 찾아 보니 데이터베이스에서 받아오는 값에 문제가 있었다. 작성중인 리스트뷰가 String Group_nameInteger word_number 를 뷰로 가지는 리스트뷰였는데, 실제로 받아오는 데이터베이스는 incorrect_word textincorrect_word..

문제 해결 2018.09.02

[Android] EditText로 ListView 구성하기

단어장 앱을 만들던 중 EditText를 가지는 Custom ListView를 구현하고 있었다. 그런데 예제를 따라 만들던 중 EditText를 스크롤 할때마다 돌아올 때 값이 사라지거나 하는 현상이 발생했다. ListView에 대한 이해 없이 구현하다 보니 이런 문제가 발생했다. 그래서 이번 포스트는 1) ListView가 동작하는 방식과 2) EditText를 원소로 이용할 때 어떻게 값을 저장하고 불러올지 예제를 소개하고자 한다. ListViewListView는 카카오톡 친구목록, 대화방 목록과 같이 같은 형태의 여러 View들을 리스트 형태로 보여주는 View이다. ListView를 이용하기 위해서는 Adapter라는 인터페이스를 구현해야 되는데, 이 Adapter라는 녀석이 안드로이드 화면 위에..

문제 해결 2018.08.27

[Android] 다이얼로그에서 액티비티로 값 전달하기

액티비티 A에서 커스텀 다이얼로그를 띄운 뒤 값을 정하고 확인버튼을 눌렀을 때 액티비티의 ListView 갯수를 바꿔주는 기능을 작성 중이다. 어째선지 다이얼로그는 뜨지만 값 전달은 안되는 현상이 발생했다. 커스텀 다이얼로그 내 함수들12345678910111213141516171819202122232425262728293031323334353637383940414243444546@Override protected void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); } public SeekbarDialog(Context context) { super(context); parentActivity = (AddWordGr..

문제 해결 2018.08.20

소수 판별법, 왜 루트 N 이하의 수만 나눠보면 되는 것일까?

에라토스테네스의 체 라는 개념을 읽어보면 n이 소수인지 아닌지 판별하기 위해서는 sqrt(n) 이하의 수만 나눠보면 된다고 한다. (sqrt는 루트를 의미함) 근데 왜 sqrt(n) 이하의 수를 나눠보면 알 수 있는 것인가? 감으로는 알 것 같으면서도 손으로 증명해 보려고 하니 잘 이해가 가지 않았고, 명쾌하게 해답을 주는 정보를 찾지 못해서 직접 생각해 보다 답이 나와 포스팅을 한다. 어떤 수 X가 합성수라고 하자. 그럼 X는 M x N의 형태로 나타날 수 있다. 그럼 여기서 M >= N 이라고 하자. 그럼 아래와 같은 식이 성립한다. -> X = M x N -> M x M >= M x N .... (N M^2 >= X (M x N = X) -> M >= sqrt(X) 즉 어떤 수 M의 최소값은 sqr..

문제 해결 2018.03.28

[C++] template, typename, class 키워드

졸업과제 프로젝트를 하던 중 이해가 잘 안가는 문법이 발견되었다. 12345678template size_t generateAdjacency(Graph* seqCollection){ typedef typename graph_traits::vertex_descriptor V; typedef typename Graph::Symbol Symbol; typedef typename Graph::SymbolSet SymbolSet;...}Colored by Color Scriptercs template 문법은 알고 있었지만 typename이라는 부분이 이해가 잘 가지 않았다. 여러 포스트들을 둘러 본 결과 typename은 다음과 같은 의미를 가진다 1. template 선언 시 class 대신에 사용할 수 있는 ..

문제 해결 2017.07.12
반응형