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

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

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

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

Xcode

Xcodeはソフトウェア開発のための、Appleの統合開発環境です。Mac OSXに付随するかたちで配布されています。

Swift

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

Q&A

3回答

2028閲覧

[Swift] 記事を表示させるアプリを作っているのですが、段落や小見出しを作るにはどうしたらよいでしょうか?

7hikolin

総合スコア124

iOS

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

Xcode

Xcodeはソフトウェア開発のための、Appleの統合開発環境です。Mac OSXに付随するかたちで配布されています。

Swift

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

0グッド

0クリップ

投稿2015/04/15 06:17

目的
Parseにデータベースを作っておき、そこにあげてある記事をアプリで表示させる

前提

  • 記事には小見出しと段落がある
  • 小見出し、段落の数は記事によって違う
  • 文章の文字数に決まりはない

イメージ
![イメージ説明]WIDTH:300

今考えている方法
Parseには小見出しと段落ごとにそれぞれカラムを作ります。
記事によって段落数は違うので、段落が存在するか確認して、あればUITextViewで表示します。

問題点
UITextViewに文章を入りきるように高さを設定するには?
一つ前の段落(UITextView)の位置から次の段落の位置を指定するには?

たとえば、section1はCGRectMake(0,0,self.view.bounds.width,300)として、section2はsection1から20pt離して表示させたいCGRectMake(0,320,self.view.bounds.width,620)

他の方法
たとえば、段落ごとにカラムをわけずにまとめて突っ込んでおき、小見出しにはHTMLのようにタグをつけておいて、UITextViewでタグごとに表示を変えることができたらいいんですが。。。

質問をまとめると

  • UITextViewに文章が入りきるように高さを設定するには?
  • 一つ上のUITextViewの位置から、次のViewの位置を指定するには?
  • UITextViewでタグで表示をかえることができるか?
  • 他の良い方法がなにかないか?ライブラリなど

以上、教えてください。宜しくお願いします。

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

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

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

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

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

guest

回答3

0

Parseを使った事がないのであまりわからないのですが、
UITextViewの高さ調整については回答がされている様なのでその他案として。

UITableViewやUICollectionViewのcellをカスタマイズし、cellの上には小見出し用LabelとUITextViewを追加し、cellの高さとUITextViewの高さは動的に調整するというのはいかがでしょうか。
そうすれば、UITextViewの次の開始座標を取得する必要もないと思います。

投稿2015/04/15 08:21

at1994

総合スコア202

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

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

0

あ、すいません。
http://blog.justoneplanet.info/2012/01/29/uitextviewの高さを可変にする/

textViewDidChangeで高さを再定義すれば良いっぽいです。。↑

投稿2015/04/15 07:18

YosukeNakayama

総合スコア80

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

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

0

lang

1 tableView.estimatedRowHeight = ***.* 2 tableView.rowHeight = UITableViewAutomaticDimension

これで高さ自動調節できます↑

投稿2015/04/15 06:26

YosukeNakayama

総合スコア80

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

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

7hikolin

2015/04/15 06:34

ありがとうございます。でも、これはUITableViewでしかできないのでは…?
guest

あなたの回答

tips

太字

斜体

打ち消し線

見出し

引用テキストの挿入

コードの挿入

リンクの挿入

リストの挿入

番号リストの挿入

表の挿入

水平線の挿入

プレビュー

まだベストアンサーが選ばれていません

会員登録して回答してみよう

アカウントをお持ちの方は

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

ただいまの回答率
85.48%

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

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

質問する

関連した質問