2015-07-12 64 views
0

我剛纔在我的Android Studio項目做了一個小測試案例,看代碼:如何登錄結果到控制檯在Android Studio中

public class MainActivityTest extends ActivityInstrumentationTestCase2<MainActivity> { 

    MainActivity activity; 



    public MainActivityTest() { 
     super(MainActivity.class); 
    } 

    @Override 
    protected void setUp() throws Exception { 
     super.setUp(); 
     activity = getActivity(); 
    } 

    public void testMainActivity() { 
     TextView textView = (TextView) activity.findViewById(R.id.hello_world); 
     Log.d(textView); 
     assertNotNull(textView); 
    } 
} 
現在

所有我想做的事是登錄的textView值到控制檯,所以我提到documentation,看到我可以console.log()結果(就像在JavaScript中)使用Log.d(testView);

但問題是在我的代碼以下行:

Log.d(testView);,導致一個錯誤,當我將鼠標懸停在Log我得到的消息說「不能解析符號日誌」。

所以我的問題是如何將結果記錄到android studio中的控制檯。

我提到THIS問題太多,但我仍然堅持。

回答

4

它說這是因爲沒有Log.d(TextView textView)方法。這是一個文檔https://developer.android.com/reference/android/util/Log.html。 但有一個Log.d(String tag, String message)方法。然後調用它像

Log.d("Message tag",textView.getText().toString()); 
+0

的工作,但我怎麼看現在它在控制檯中,執行我必須運行一些東西? –

+0

在Android Studio的底部菜單中選擇「Android」,然後點擊「logcat」。選擇適當的過濾器,它應該是可見的。 –

+0

做到了這一點,看到在這裏的屏幕截圖,我仍然無法看到任何日誌http://i.imgur.com/xoUa4q6.jpg –

3

Log.d("TAG", "Message");

1)使用大寫字母作爲Loglog 2)它有兩個參數(或三個),而不僅僅是一個

您可以通過登錄TextView的價值

TextView textView = (TextView) activity.findViewById(R.id.hello_world); 
Log.d("TAG", textView.getText().toString()); 
2

日誌是android.util.Log的一部分。所以你必須先導入這個。

日誌使用一個標記,因爲它是第一個參數,而輸出字符串是第二個參數。例如:

private static final String TAG = "MyActivity"; 
Log.d(TAG, "index=" + i); 

你也可以做System.out.println("My string here");

但請注意,在你的代碼中的錯誤。日誌需要一個字符串值,可以使用testView.getText().toString()而不是testView

1

您是否已經導入它?

import android.util.Log 

而且根據你必須把至少2個字符串的函數,標籤和消息的documentation

log.d("MainActivityTest", textView.getText()); 
+0

@ jonty800更快 –

+0

工作,但我如何看到它在控制檯現在,我必須運行的東西嗎? –