我想做一个这样的功能,把一些控件的属性设置放到一个单独的文件里,分开来,就像html和css那样,
这样写界面的时候就比较简单了
不用一大串一大串的设置属性。
现在的问题是,这个属性文件没有代码自动补全,比较麻烦,怎么样才能实现代码补全的功能?
还有个问题是对属性的解释有没有什么高效的办法?一个一个属性去解析然后设置,也比较麻烦
我用了kvc,但是kvc似乎不能解决所有问题
怪我咯2017-04-18 09:35:29
あなたのようなファイルのコード補完用の既製ツールはありません。そのため、独自の Xcode プラグインを作成し、すべてのキーワードとシステム メソッド名を SDK に入れることしかできません。または、テキスト エディタを使用すると、独自の構文強調表示やコード補完を定義するのに一般的に便利です。
属性を説明するこれ以上簡単な方法はないようです。ただし、事前に 1 つずつ定義する必要はなく、respondsToSelector
または performSelector: NSSelectorFromString(set...)
を使用して実行時に属性値を設定できます。 CSS の属性名の最初の文字を大文字にし、その前に「set」を追加するとメソッド名になります。 class_copyMethodList
はクラスのすべてのメソッドを取得できます。 衝突を避けるように注意してください。
CSS を記述するときに、自動レイアウトを直接使用することもできます。サードパーティの自動レイアウトは、CSS 定義と同様に、コードと構成ファイルを使用して制約を定義できます。
以前に CSS レイアウトについて多くの研究を行った人もいます。彼らのコードを研究してみてください。例: https://github.com/gavinkwoe/... 例: https://github.com/hackers-pa... 例: https://github.com/tolo/Inter...
Facebook にも以前プロジェクトがありましたが、数年前にそのプロジェクトを中止しました。