1. ホーム
  2. android

アクションバーの下のプログレスバー

2023-09-25 18:38:56

質問

質問の概要。 どのようにすれば ProgressBar の中に統合することができます。 ActionBar の中に統合されているのですか?

詳細を教えてください。 Chrome のこのスクリーンショットをご覧ください。

このようなAction Barを作りたいと思います。Action Barのすぐ下には、ページの読み込みに応じて表示されるProgressBarがあります。この例はFeedlyなど多くのアプリで見かけますが、自分なりの実装を作ることはできていません。 Android独自のAPIを使用して作成してみました。

@Override
protected void onCreate(Bundle savedInstanceState) {
    //Request Permission to display the Progress Bar...
    this.requestWindowFeature(Window.FEATURE_PROGRESS);
            this.setWindowContentView(R.layout.activity_main)
    super.onCreate(savedInstanceState);

    this.setProgressBarIndeterminate(true);
}

しかし、このコードでは ProgressBar が表示されるだけです。 以上 を表示させるだけです。

では、Chrome アプリのように ProgressBar をアクション バーの下に表示させるにはどうしたらよいでしょうか。

どのように解決するのですか?

これは、現在、ネイティブの動作として スワイプリフレッシュレイアウト .

スクロール可能なビューを SwipeRefreshLayout でラップし、あとは onRefresh イベントを聞くだけです。

@Override
protected void onCreate(Bundle savedInstanceState) {
    super.onCreate(savedInstanceState);
    setContentView(R.layout.activity_main);

    swipeLayout = (SwipeRefreshLayout) findViewById(R.id.swipe_container);
    swipeLayout.setOnRefreshListener(this);
    swipeLayout.setColorScheme(android.R.color.holo_blue_bright, 
            android.R.color.holo_green_light, 
            android.R.color.holo_orange_light, 
            android.R.color.holo_red_light);
}


@Override public void onRefresh() {
    new Handler().postDelayed(new Runnable() {
        @Override public void run() {
            swipeLayout.setRefreshing(false);
        }
    }, 5000);
}

簡単なチュートリアルは このブログ .