2014/02/23

[ios]調べることメモ

iOS開発でよくわかってないことを調べておこう、というメモ。
いや、わかってないことが多いのだけど、

PROJECT-Deployment Targetにある「iOS Deployment Target」とTARGETS-General-Deployment Infoにある「Deplyment Target」の違い。

ばらばらに設定できるとは思わんかった。
https://developer.apple.com/jp/devcenter/ios/library/documentation/Xcode/Conceptual/ios_development_workflow/#115-Configuring_Applications/configuring_applications.html
項目としては「対応する一番古いiOSリリース」を指定するものらしい。

Quick Helpでは、「IPHONEOS_DEPLOYMENT_TARGET」という設定名のよう。

Code will load on this and later versions of iOS.  Framework APIs that are unavailable in earlier versions will be weak-linked; your code should check for null function pointers or specific system versions before calling newer APIs. 
AndroidManifestにも同じような項目があるけど、こっちがなぜそれぞれ設定できるのかわからん・・・。
エミュレータで試してみよう(Xcode5.1 beta5)。

PROJECT=iOS6.1、TARGET=iOS6.1・・・iOS6.1エミュレータ:OK
PROJECT=iOS7.1、TARGET=iOS6.1・・・iOS6.1エミュレータ:OK

PROJECT=iOS6.1、TARGET=iOS7.1・・・iOS6.1エミュレータ:not valid
PROJECT=iOS6.1、TARGET=iOS7.1・・・iOS7.0エミュレータ:not valid
PROJECT=iOS6.1、TARGET=iOS7.1・・・iOS7.1エミュレータ:OK

これだけ見ると、TARGETで指定した方しか意味を持たないように見える。
ただ、こちらのサイトを見ると、64bit対応とかに関係するみたいだが、よくわからん。
うーん・・・気持ち悪い。

-------------------

TextView1つだけ、みたいなときは、Viewの中にTextViewを置いた方がよいのか、Viewの代わりにTextViewを置いた方がよいのか。

これは、TextViewを代わりに置いた方が良さそうだ。テキストが最後までスクロールされなかった。
とはいえ、毎回そんなアプリでいいわけもなく。

UITextViewは、
@interface UITextView : UIScrollView <UITextInput>
なので、スクロールする成分を持っているし、実際にやってくれた。
いい子だ。

しかし、それをUIViewの中に入れただけで、スクロールを最後までしなくなってしまう。
正確には、フリックすると一番下まで見えるのだが、離すと数行前まで戻ってしまう。
スクロールを持っているのはUITextViewだから、場所が変わっても同じ動きをしそうなものなのだけど、理屈がわからん。
うーん・・・気持ちが悪い。

0 件のコメント:

コメントを投稿

コメントありがとうございます。
スパムかもしれない、と私が思ったら、
申し訳ないですが勝手に削除することもあります。