C#开发安卓自学笔记1
今天开始研究了下C#开发安卓,刚开始什么都不懂,学过安卓的同学们也是用Java开发的,虽然两者开发差别不大,但是还是有差别的
// Set our view from the "main" layout resource
SetContentView(Resource.Layout.Main);//这句是让你的屏绑定一个样式表
// Get our button from the layout resource,
// and attach an event to it
Button button = FindViewById<Button>(Resource.Id.MyButton); //这句是获取你样式表中的button对象
EditText text = FindViewById<EditText>(Resource.Id.textView1); //这句是获取你样式表中的EditText对象
button.Click += delegate {
Activity2 a2 = new Activity2();//实例化一个activity对象,在我理解就是个屏对象
Toast.MakeText(this.ApplicationContext,text.Text,ToastLength.Short).Show(); //吐丝弹窗,参数(第一个为本屏的上下文参数。注:这里与Java的不同Java的是类.this,而C#的是this.ApplicationContext,第二个为弹窗中的文本内容,第三个是弹窗后显示的时间。吐丝弹窗是弹完后自动消失的)
Intent i = new Intent(this.ApplicationContext,a2.Class); //这里我理解的是一个跳转对象,传入参数本屏的上下文对象,和跳转到的屏的类对象。
this.StartActivity(i);//开始打开要跳转到的屏方法
};
研究时遇到几个问题:
1.添加layout样式表时,绑定到屏对象时发现检索不到。解决办法重新加载下项目就Ok,要是还是不行就在Resource.Designer.cs中的public partial class Layout中加上你新建的layout参数属性,在运行下然后提示部署时点否 他就会重新加载整个项目。
2.可编辑的文本是EditText 并不是TextView 新手需注意下。
3.要想可编辑文本框带有像注册文本框那种带有提示语效果,在样式表中加上android:hint="XXXX"即可。
4.跳转屏时,改目标屏必须存在,否则会出现闪退的效果。
以上就是我一个下午的研究成果。继续努力!加油