菜鸟教程小白 发表于 2022-12-12 12:49:09

ios - 可在其他类中访问的 Objective-C 变量


                                            <p><p>我有一个名为 language 的 NSString 对象,我想从其他类访问它,正确的方法是什么?我尝试了以下步骤:</p>

<p>1) 我创建了委托(delegate)方法并通过委托(delegate)发送字符串</p>

<pre><code>-(void)setLanguageForController:(NSString *)language {
   self.language = language;
}
</code></pre>

<p>控制台显示了这个</p>

<blockquote>
<p>unrecognized selector sent to instance delegate</p>
</blockquote>

<p>2) 我创建了 getCurrentLanguage 方法</p>

<pre><code>static NSString *language;



+(NSString*)getCurrentLanguage {
   return language;
}
</code></pre>

<p>然后像这样访问</p>

<blockquote>
<p>NSString *myLanguage = [ getCurrentLanguage];</p>
</blockquote></p>
                                    <br><hr><h1><strong>Best Answer-推荐答案</ strong></h1><br>
                                            <p><p>您应该在您的类 <code>.h</code> 文件中将 <code>language</code> 声明为一个属性。</p>

<pre><code>@property (nonatomic, copy) NSString* language;
</code></pre>

<p>当你想设置语言时:</p>

<ul>
<li><p>初始化你的类实例:<code>yourObj</code></p></li>
<li><p><code>调用:yourObj.language = "whatever"</code>
或 <code>;</code></p>

<p>每个属性声明都以类型说明和名称结尾。
例如:</p></li>
</ul>

<blockquote>
<p>@property(copy) NSString *title;</p>
</blockquote>

<p>此语法等效于声明以下访问器方法:</p>

<pre><code>- (NSString *)title;
- (void)setTitle:(NSString *)newTitle;
</code></pre>

<p>阅读有关 Objective-C 属性的更多信息 <a href="https://developer.apple.com/library/prerelease/content/documentation/General/Conceptual/DevPedia-CocoaCore/DeclaredProperty.html" rel="noreferrer noopener nofollow">here</a> </p></p>
                                   
                                                <p style="font-size: 20px;">关于ios - 可在其他类中访问的 Objective-C 变量,我们在Stack Overflow上找到一个类似的问题:
                                                        <a href="https://stackoverflow.com/questions/42017029/" rel="noreferrer noopener nofollow" style="color: red;">
                                                                https://stackoverflow.com/questions/42017029/
                                                        </a>
                                                </p>
                                       
页: [1]
查看完整版本: ios - 可在其他类中访问的 Objective-C 变量