Android: Làm cách nào tôi có thể in một biến trên bảng điều khiển eclipse


Câu trả lời:


117

System.out.printlnLog.dcả hai đều vào LogCat, không phải Console.


1
Sử dụng LibGDX và System.out.println vào bảng điều khiển. Đang tìm cách đưa nó vào logcat để tôi có thể đăng nhập / gỡ lỗi ứng dụng của mình trên thiết bị thực tế.
Madmenyo


6

Tôi mới bắt đầu phát triển Android và tôi làm việc này:

1) Tạo một lớp:

nhập android.util.Log;

công khai lớp cuối cùng Gỡ lỗi {
    Gỡ lỗi riêng tư () {}

    public static void out (Object msg) {
        Log.i ("thông tin", msg.toString ());
    }
}

Khi bạn hoàn thành dự án, hãy xóa lớp.

2) Để in một tin nhắn tới LogCat, hãy viết:

Debug.out ("something");

3) Tạo một bộ lọc trong LogCat và viết "thông tin" vào đầu vào "bằng Thẻ nhật ký". Tất cả tin nhắn của bạn sẽ được viết ở đây. :)

Mẹo: Tạo một bộ lọc khác để lọc tất cả các lỗi để gỡ lỗi dễ dàng.


8
Viết code như thế này không phải là một ý kiến ​​hay vì lớp Log quen thuộc với hầu hết ... tất cả các nhà phát triển Android. Bằng cách gói nó trong lớp của riêng bạn và không thêm chức năng mới, tất cả những gì bạn làm là che khuất ý nghĩa của mã đối với những người khác ngoài chính bạn.
Thomas Dignan

6

Viết mã followin để in bất cứ thứ gì trên LogCat hoạt động hoàn toàn tốt !!

int score=0;
score++;
System.out.println(score);

in điểm trên LogCat. Hãy thử điều này


3

Tôi nghĩ bánh mì nướng có thể là một phương pháp tốt để hiển thị giá trị của một biến!


1
Vấn đề xảy ra với Bánh mì nướng khi các giá trị nhiều và nhanh, chẳng hạn như ax, y tọa độ ghi nhật ký trên ACTION_MOVE. Trong những trường hợp như vậy, văn bản trên màn hình hoặc đầu ra Nhật ký có thể là giải pháp tốt hơn.
TechNyquist

1

Ok, Toast không phức tạp nhưng nó cần một đối tượng ngữ cảnh để hoạt động, có thể là như vậy MyActivity.this, sau đó bạn có thể viết:

Toast.maketext(MyActivity.this, "Toast text to show", Toast.LENGTH_SHORT).show();

Mặc dù Toast là một tài nguyên giao diện người dùng, sau đó sử dụng nó trong một luồng khác khác với luồng ui, sẽ gửi lỗi hoặc đơn giản là không hoạt động Nếu bạn muốn in một biến, hãy đặt biến đó name.toString()và nối biến đó với văn bản bạn muốn trong tham số maketext String; )


0

bánh mì nướng là một ý tưởng tồi, nó quá "phức tạp" để in ra giá trị của một biến. sử dụng log hoặc sop, và như drawnonward đã nói, đầu ra của chúng chuyển đến logcat. nó chỉ có ý nghĩa nếu bạn muốn tiết lộ thông tin này cho người dùng cuối ...


0

Nếu mã bạn đang kiểm tra tương đối đơn giản thì bạn có thể chỉ cần tạo một dự án Java thông thường trong Package Explorer và sao chép mã, chạy nó và sửa nó ở đó, sau đó sao chép lại vào dự án Android của bạn.

Thực tế là System.out bị chuyển hướng khá khó chịu để nhanh chóng kiểm tra các phương pháp đơn giản, nhưng đó là giải pháp dễ nhất mà tôi đã tìm thấy, thay vì phải chạy trình giả lập thiết bị chỉ để xem biểu thức chính quy có hoạt động hay không.


0

Nhân tiện, trong trường hợp bạn không biết đâu là vị trí chính xác của JSONObject bên trong JSONArray của mình, tôi khuyên bạn nên sử dụng mã sau: (Tôi đã giả định rằng "jsonArray" là biến chính của bạn với tất cả dữ liệu và tôi đang tìm kiếm chính xác đối tượng bên trong mảng có hàm bằng)

    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;
Khi sử dụng trang web của chúng tôi, bạn xác nhận rằng bạn đã đọc và hiểu Chính sách cookieChính sách bảo mật của chúng tôi.
Licensed under cc by-sa 3.0 with attribution required.