我正在考虑从Android开发开始。
Android中IBActions和IBOutlets的等价物是什么?
设置与代码的连接是否像Interface Builder一样简单?
如果知道java,可以快速学习android开发的基础知识吗?
答案 0 :(得分:2)
我会说,将代码连接到Android中的UI元素比使用Xcode / IB时更远,更远(真的远)更容易。然而,这完全取决于你习以为常的事情。我来自Microsoft生态系统,在过去的15年中,代码和UI设计器之间的集成是无缝且轻松的(从Visual Basic开始,通过最新版本的Visual Studio)。 Android开发(至少在Eclipse中)更像是MS世界,而不是Xcode / IB世界,尽管在Visual Studio中并没有真正的设计师。
要开始使用Android,最好放弃您习惯使用的大多数iPhone概念,而不是寻找一对一的类比。我目前正在学习iPhone开发过程中,我发现最好只接受事情是如何完成的,而不是假设它就像C#/ .Net一样具有不同的名称。
答案 1 :(得分:0)
对于你的上一个问题,我会回答“是”。
您仍然可以将界面连接到您的代码,但是目前您可以通过编程方式动态执行此操作:在您的XML布局文件中为<Button android:id="@+id/myButton" />
或某些此类视图提供ID后,您可以在代码中调用并在创建布局后View myButton = findViewById(R.layout.myButton)
。后者相当于IBOutlet
并在IB中连接,除非在您需要时建立连接。 (如果需要,您也可以通过编程方式为iPhone执行此操作。)
IBAction的等价物是使用onClickListener
,声明myButton.setOnClickListener(this);
并且this
实现View.OnClickListener。然后,您覆盖public void onClick(View v)
并使用v.id
上的开关。
在实践中,这并不像我说的那么糟糕。我遇到的Android开发的主要痛苦是缩放不同设备的视图。
如果你掌握了这个和意图,其余部分就是非常简单的Java。
答案 2 :(得分:0)
在AndroidDev eco和Visual Studio eco中都没有IBOutlets,IBActions。
而不是IBOUtlet,你必须找到控件并将其转换为正确的类型。
Button but1 = (Button) findViewById(R.layout.but1)
IBAction可以通过两种不同的方式完成
纯码&gt;&gt;
//find Button b1 = ...
b1.setOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View v) {
//do something
}
});
或使用布局&gt;&gt;
<Button
android:id="@+id/button2"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_marginLeft="10dp"
android:onClick="button2Clicked"
android:text="@string/text_but_1" />
xCode确实完全相同。 ibOutlets和ibActions只是合成糖。 从storyboard xml
读取和启动触摸类时,同样的事情继续进行Visual Studio也使用像xCode这样的合成糖。 当您双击某个按钮时,您将在Android Developer中手动编写的代码会自动写入名为className.config.cs的文件中
我是androidStudio的新手。无法在xCode和VisualStudio中找到设计界面合成糖。也许有,但我无法找到它。
Android Developer和Visual Studio代码完整性与xCode完全不同。 xCode很糟糕。我全部使用它们。 当您在代码的左侧看到一个quetation标记时,单击它。 或者只需按Alt + Enter。
AndDev将为您编写大量代码
c#和java开发人员非常习惯于调用尚未编写的方法,读取不存在的变量。
记住Alt + Enter! AndDev会为你做这一切