UnityでVisulaStudioの自動補完(インテリセンス)が上手く動かなかったとき

Unityでスクリプトを書くときは入力補完が欲しいですよね

unityでスクリプトを書くとき、Unity2018ではVisualStudio2017が立ち上がるようになっています。なのですが自分は全然自動補完が聞かず、Inputとか入力してもさっぱり候補が出てきませんでした。

以下備忘録。

1.そもそもVisual studio のUnityのパッケージが入っていないかった

hikaruryugaku.hatenablog.comこの記事が大変わかりやすいかと思います。

しかしながら自分はこれでも解消せず…なぜ?

2.Unityの外部スクリプトツールがVisual Studio になっていなかった。

結果関係なかったんですが、一応。

UnityでEdit ⇒ Preference ⇒ External Tools がVisual Studioになっていませんでした。

3..NetFrameWork4.7.1が入っていなかった

原因こちらでした。よくよく考えるとスクリプト初めて開いた一回目で警告が出てました。一度開いちゃうとそれ以降出なくなってしまうので解決できなかったのですが。

visual studio の警告メッセージが出て、「.netFrameWork4.6に置き換え」ってするとインテリセンスがきかないという事態に陥りましたので、素直に「.netFrameWork4.7.1をダウンロード」に進みます。

無事インテリセンスが出るようになりました。

Conflict with dependencyエラーについて

android studio で開発してると

Conflict with dependency

とエラーが出ることがあります。

 

↓こんなん

Conflict with dependency 'com.android.support:support-annotations'. Resolved versions for app (26.1.0) and test app (27.1.1) differ.

 

android初心者なので正直エラーの意味が分からんでした。

ちなみに私のプロジェクトはコンパイルSDKのバージョンがAPI26:Android8.0で作成しておりました。なのですが、27.1.1を参照しているやつがいるからエラー…という理解でよいのですかね?

 

とりあえず、以下サイトを参考にして解消しました。

大変助かりました。

 

onlineconsultant.jp

 

まず、android studioの一番左下のターミナルを起動して、以下コマンドを打ちます。

 

gradlew -q app:dependencies

 

そうしますと、ものすごく長い出力結果が表示されますので、お好きなテキストエディタにコピー。

f:id:nuruyu:20180512231128p:plain

すみません写真わかりにくいですね。

で、エラーが出ているバージョン(今回だと27.1)で検索をかけると、そのバージョンと依存関係のあるライブラリが浮き出てきます。

 

com.android.support.test:runner:1.0.2

が参照しているっぽいので、app内のgradleに以下を追記しました。

 

dependencies {


・(中略)
androidTestCompile 'com.android.support:support-annotations:27.1.1'
compile 'com.android.support.test:runner:1.+'
}

 

これで解決。

stack overflowにも記載はあるんですが、英語ばっかりなんだなあ。

androidの道は長く険しそうです。

 

 

android備忘録

 アンドロイド開発を仕事で行うことになりました。

備忘録的に書いていこうかと。androidはver2.3くらいのときにアプリ作って公開してたんですが、早いものでもうandroid8.0とかですね。当時はeclipseで作ってたんですが、今やAndroid Studioが公式になっているんで、そっちを使って勉強しております。

 

とりあえず備忘録的に。。。

 

Action Barを消したい場合

⇒ Manifest.xmlを以下のように修正する。

  android:theme="@style/Theme.AppCompat.Light.NoActionBar"

 

 

UIDateTimePickerでNSExceptionが出た時の話

swift開発で、テキストボックス選択時にDateTimePickerを出したかった

swiftでiphone向けアプリの開発勉強中です。

元々Javaくらいしかちゃんとしたプログラム経験がないので、参考書を見ながらネットの記事を見ながらひたすら写経しておりました。

その際に遭遇した問題がこちら。

 

図1テキストビューを選択すると

f:id:nuruyu:20170507125211p:plain

図2 UIDateTImePickerが出るようにコードを書きました。

   しかし、日付を選択すると、、、

f:id:nuruyu:20170507125225p:plain

 

図3 あぼん。NSExceptionが発生しました。

f:id:nuruyu:20170507130253p:plain

 

ネットのサンプルコードの通りに書いたのになあ

結論から述べますと、ここのサイトに書かれていることが全てでございました。

 

ja.stackoverflow.com

原因はUIDatePickerで定義したSelectorとメソッドの整合性が取れていないこと。

上記ブログの通りにしたら解決しました。

いやはや、サンプルコードが2015年のものだったのがいけなかったのか、2017年現在はswift3、swift2以前のコードと勝手が違ったようです。

ios開発においては特に最新の記事を探すことに気をつけようと思います。

しかしAppleDeveloperはもっとサンプルコードとか実例を乗せてくれたら親切なのになあ。

 

ブログを始めてみました。

はてぶを始めました。ぬる湯と申します。

地方都市にUターンで帰ってきてプログラマとして働いているのですが、仕事上で覚えたことを備忘録的にのせていこうかと。

よろしくお願いします。