2011-12-30 18 views
11

Tôi muốn biết làm thế nào tôi có thể thực hiện trong Android một chronometer đơn giản với nút bắt đầu và dừng hiển thị dữ liệu theo định dạng HH: MM: SS: MsMs ... Tôi đã tìm kiếm và tìm kiếm và tôi đã tìm thấy một số lớp học trên nhà phát triển google, nhưng họ không đưa ra các ví dụ và tôi bị lạc ... Bạn có thể hướng dẫn tôi đến một hướng dẫn/ví dụ không? Tôi chỉ mới bắt đầu trong Android :) Bất kỳ trợ giúp nào cũng sẽ được đánh giá cao.Tạo một chronometer trong Android

Trả lời

14

Chỉ cần thực hiện Chronometer trong XML hoặc Mã và sử dụng phương thức start() để bắt đầu nó và phương thức stop() của nó để dừng nó.

thêm có thể được tìm thấy ở đây: http://developer.android.com/reference/android/widget/Chronometer.html

XML:

<?xml version="1.0" encoding="utf-8"?> 
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android" 
    android:layout_width="match_parent" 
    android:layout_height="match_parent" 
    android:orientation="vertical" > 

    <Chronometer 
     android:id="@+id/chronometer1" 
     android:layout_width="wrap_content" 
     android:layout_height="wrap_content" /> 

    <Button 
     android:id="@+id/button1" 
     android:layout_width="wrap_content" 
     android:layout_height="wrap_content" 
     android:text="Start" 
     android:onClick="startChronometer"/> 

    <Button 
     android:id="@+id/button2" 
     android:layout_width="wrap_content" 
     android:layout_height="wrap_content" 
     android:text="Stop" 
     android:onClick="stopChronometer"/> 

</LinearLayout> 

Java:

public class Main extends FragmentActivity { 
    /** Called when the activity is first created. */ 
    @Override 
    public void onCreate(Bundle savedInstanceState) { 
     super.onCreate(savedInstanceState); 
     setContentView(R.layout.test); 
    } 

    public void startChronometer(View view) { 
     ((Chronometer) findViewById(R.id.chronometer1)).start(); 
    } 

    public void stopChronometer(View view) { 
     ((Chronometer) findViewById(R.id.chronometer1)).stop(); 
    } 
} 

Bạn có thể thêm một số mã để các phương pháp startChronometer() để khởi động lại bộ đếm.

+0

Tôi có nhiều bố cục hơn (XML) mà tôi muốn sử dụng chronometer với ... Làm thế nào để tôi thích ứng với dòng này "setContentView (R.layout.test);" để cho phép ứng dụng nhận cuộc gọi từ các bố cục khác, không chỉ từ cuộc gọi "thử nghiệm"? – user1123530

+0

Tôi không biết liệu tôi có thể giúp bạn đúng hay không, nhưng bạn sẽ cần một Chronometer trong mọi bố cục XML nếu bạn không thêm Chronometer trong Java. – user1014917

+0

Vâng, tôi có một menu chuyển hướng tôi đến một trong năm định danh XML với một chronometer và một tệp java, cả java và XML với mã ở trên ... Làm thế nào để tôi thích ứng với tệp java để phục vụ năm xml? Hay tôi phải tạo một tệp java cho mỗi xml? – user1123530