質問をすることでしか得られない、回答やアドバイスがある。

15分調べてもわからないことは、質問しよう!

新規登録して質問してみよう
ただいま回答率
85.48%
iOS

iOSとは、Apple製のスマートフォンであるiPhoneやタブレット端末のiPadに搭載しているオペレーションシステム(OS)です。その他にもiPod touch・Apple TVにも搭載されています。

Swift

Swiftは、アップルのiOSおよびOS Xのためのプログラミング言語で、Objective-CやObjective-C++と共存することが意図されています

Q&A

解決済

2回答

1654閲覧

【Swift】進捗バーを簡単に表示するには? |棒グラフイメージ

HNSZ

総合スコア33

iOS

iOSとは、Apple製のスマートフォンであるiPhoneやタブレット端末のiPadに搭載しているオペレーションシステム(OS)です。その他にもiPod touch・Apple TVにも搭載されています。

Swift

Swiftは、アップルのiOSおよびOS Xのためのプログラミング言語で、Objective-CやObjective-C++と共存することが意図されています

0グッド

0クリップ

投稿2018/10/30 13:26

こんばんわ
左側の画像のように、進捗により増減する進捗バーを作成したいのですが、
やり方がわからず、、右側のようにViewを重ねることで作成できないかと思っております。

イメージ説明

この方法で問題がないかどうか、
もっとスマートな方法はないか
もしご存知でしたら何かしらアドバイスをいただけないでしょうか。

よろしくおねがいします。

気になる質問をクリップする

クリップした質問は、後からいつでもMYページで確認できます。

またクリップした質問に回答があった際、通知やメールを受け取ることができます。

バッドをするには、ログインかつ

こちらの条件を満たす必要があります。

fuzzball

2018/10/31 06:51

左側の画像には、進捗バーが2種類あるように見えるのですが、奥の方の進捗バーについての質問でしょうか?
HNSZ

2018/10/31 07:28

fuzzball様 分かりづらくすいません。左側最下部の進捗バー(7.26倍表記)をイメージしております。
fuzzball

2018/10/31 07:42 編集

すみません、分かりません。左側の画像では、両端が丸いバー(薄い青色が進捗?)と、四角いバー(バーそのものが進捗)の2つあるように見えるのですが、どちらのバーについての質問なのでしょうか?と聞いています。
HNSZ

2018/10/31 16:00

fuzzball様 度々申し訳ございません! 両端が丸いバー(薄い青色が進捗となります!)でございます。 丸くする等、細部が困難な場合には一旦飛ばし、とりあえず表記できることを優先で進めたいと思っています。
guest

回答2

0

ベストアンサー

ぱっと思いつく方法は

  1. ビューを重ねる(2つのビューを同じ親に置く)
  2. サブビューを追加する(背景のビューに値のビューを子として入れる)
  3. ビューにサブレイヤーを追加する(2のレイヤーバージョン)
  4. drawRectで自前で描画する

くらいでしょうか。
用途が合えばどれでもいいと思いますが、1はクラス化しにくいので良くないと思います。

投稿2018/10/30 13:41

toki_td

総合スコア2850

バッドをするには、ログインかつ

こちらの条件を満たす必要があります。

fuzzball

2018/11/01 00:25

両側を丸くしたいようなので2番が良さそうですね。 >>HNSZさん 背景Viewを角丸にして clipsToBounds = true にしておけば、上に乗せたViewの両端も丸く切り取られます。
HNSZ

2018/11/01 13:32

fuzzball様 toki_td様 ご丁寧にありがとうございます!とても参考になりました。 「背景Viewを角丸にして clipsToBounds = true 」の方法にて進めたいと思います!
guest

0

私なら同じ方法をとります
複数箇所で使う場合はCustomViewにします

その場合、UIProgressViewを参考にprogressというパラメータを作り
progressを設定したら進捗が変わるようにします
少し引っかかりそうなのは、枠は内枠にできないってくらいです(枠線と中の色が異なる場合)

投稿2018/10/31 06:19

kosanai

総合スコア471

バッドをするには、ログインかつ

こちらの条件を満たす必要があります。

HNSZ

2018/11/01 13:34

kosanai様 ご丁寧にありがとうございます! ご指摘の色の部分まで気が回っていませんでした。。 調整しながら進めていきたいと思います。 ProgressViewの存在を知らなかったので助かりました。 利用いたします。
kosanai

2018/11/02 01:11

UIProgressViewは高さが変えられないので、他の方も結局カスタムViewつかってるみたいですね。UIProgressViewは分かりやすいところだと、WebViewの読み込みでよく見ます。NavigationBarの下によく配置されています。
HNSZ

2018/11/02 15:38

kosanai様 >WebViewの読み込みでよく見ます。NavigationBarの下によく配置されています。 普段気にすることなく見逃してましたが、いろいろ便利に使われてるんですね。 一旦(通常の?)UIViewで実装できました。 色々とありがとうございました。
guest

あなたの回答

tips

太字

斜体

打ち消し線

見出し

引用テキストの挿入

コードの挿入

リンクの挿入

リストの挿入

番号リストの挿入

表の挿入

水平線の挿入

プレビュー

15分調べてもわからないことは
teratailで質問しよう!

ただいまの回答率
85.48%

質問をまとめることで
思考を整理して素早く解決

テンプレート機能で
簡単に質問をまとめる

質問する

関連した質問