디버깅 목적으로 콘솔에 변수 값을 인쇄하고 싶었지만 system.out.println이 작동하지 않습니다.
답변:
저는 Android 개발이 처음이며 이렇게합니다.
1) 수업 만들기 :
import android.util.Log; 공개 최종 클래스 Debug { 비공개 디버그 () {} public static void out (Object msg) { Log.i ( "info", msg.toString ()); } }
프로젝트를 마치면 클래스를 삭제하십시오.
2) LogCat 쓰기에 메시지를 인쇄하려면 :
Debug.out ("something");
3) LogCat에 필터를 생성하고 "by Log Tag"입력에 "info"를 씁니다. 모든 메시지가 여기에 기록됩니다. :)
팁 : 쉽게 디버깅 할 수 있도록 모든 오류를 필터링하는 다른 필터를 만듭니다.
LogCat에서 무엇이든 인쇄하기 위해 다음 코드를 작성하면 완벽하게 작동합니다 !!
int score=0;
score++;
System.out.println(score);
LogCat에 점수를 인쇄합니다.
토스트가 변수의 가치를 보여주는 좋은 방법이라고 생각합니다!
Ok, Toast는 복잡하지 않지만 작동하려면 컨텍스트 객체가 필요합니다 MyActivity.this
. 다음과 같이 작성할 수 있습니다.
Toast.maketext(MyActivity.this, "Toast text to show", Toast.LENGTH_SHORT).show();
Toast는 UI 리소스이지만 ui 스레드와 다른 다른 스레드에서 사용하면 오류가 발생하거나 작동하지 않습니다. 변수를 인쇄하려면 변수를 넣고 name.toString()
maketext String 매개 변수에 원하는 텍스트와 연결합니다. )
그건 그렇고, JSONArray 내부의 JSONObject 의 정확한 위치 를 모르는 경우 다음 코드를 사용하는 것이 좋습니다. ( "jsonArray"가 모든 데이터가 포함 된 주요 변수라고 가정하고 정확한 equals 함수가있는 배열 내부의 객체)
JSONArray list = new JSONArray();
if (jsonArray != null){
int len = jsonArray.length();
for (int i=0;i<len;i++)
{
boolean flag;
try {
flag = jsonArray.get(i).toString().equals(obj.toString());
//Excluding the item at position
if (!flag)
{
list.put(jsonArray.get(i));
}
} catch (JSONException e) {
e.printStackTrace();
}
}
}
jsonArray = list;