2012-03-28 2 views
1

서버에서 내 항목을 나열하는 방법이 있습니다. 따라서이 방법은 모든 항목을 가져올 때까지 시간이 걸립니다. 그래서 ProgressDialog를 사용하여이 메소드를 기다리고 싶습니다. 몇 가지 모듈을 읽었지만 유용한 해결책을 찾지 못했습니다.ProgressDialog와 함께 타이머 사용

public void onCreate(Bundle savedInstanceState) 
     { 
      super.onCreate(savedInstanceState); 
      // setContentView(R.layout.main; 
        loginScreen(); 
     } 
    public boolean getItems() throws MessagingException 
      { 
        items receiving here 
      } 
    public void loginScreen() 
      { 
        setContentView(R.layout.main); 
        Button loginBtn = (Button) findViewById(R.id.btnLogin); 

        loginBtn.setOnClickListener(new Button.OnClickListener() 
        {   
         public void onClick(View arg0) 
         { 
          getItems(); 
         } 
        } 
      } 

버튼을 클릭하십시오. 모든 항목을받은 방법을 호출합니다. 버튼을 클릭하면 모든 항목이 표시 될 때까지 진행 상태 표시 줄을 표시하려고합니다.

영어로 죄송합니다. 모든 답변을 주시면 감사하겠습니다.

답변

1

AsyncTask을 작성하여 ProgressBargetItems()에 표시합니다. 주 스레드가 서버에서 물건을 가져 오는 중 바쁠 것이고 ProgressBar이 완료 될 때까지 나타나지 않기 때문에 AsyncTask이 필요합니다.

+0

정말 고마워요! 거의 내가 원하는 것처럼 작동합니다. ProgressDialog는 메서드가 결과를 준비하고 있지만 너무 빠르다는 것을 보여줍니다. 그래서 진행 과정은 짧은 시간 동안 그렇게 보입니다. progressdialog의 쇼를 2 초 더 지연시키기 위해 타이머와 같은 것을 추가 할 수 있습니까? – Merve

+0

당신이해야 할 일은'Thread.sleep (2000);'이며, 2 초 또는 2000 밀리 초가 지연 될 것입니다. – Mayank

+0

그것은 내가 원하는 것처럼 절대적으로 작동합니다! 다시 감사합니다 – Merve