使用IntelliJ IDEA让应用程序交互

经过Intellij IDEA初步编辑的应用程序虽然功能齐全,但是应用程序不支持任何形式的交互。使应用程序支持交互事件,需要编辑src文件夹中的MyActivity类。

1 打开MyActivity

Project视图中,找到MyActivity.java类并单击。

 

2 为视觉元素添加应用

Android,开发者需要明确地获得视觉元素的引用来以编程方式进行操纵。开发者需要定义活动类来保存这些引用,然后从onCreate内部调用一个新创建的方法初始化这些应用。需要添加以下代码到MyActivity:

 

public class MyActivity extends Activity {
     private TextView message;
     private ImageView droid;
 
     // More code goes here ...
}

 

接下来,为InitializeAppin onCreate新方法添加一个调用。 IntelliJ IDEA会及时检测该方法是否丢失,并为用户提供自动生成。

 

InitializeAppyou方法中为可视化元素指定引用:

private void InitializeApp() {
     message = (TextView) findViewById(R.id.message);
     droid = (ImageView) findViewById(R.id.imageView);
 
     // More code goes here ...
 
}

 

表达式R.id.xxx表明Rauto-generated类的一个引用。这个类为应用程序资源收集引用。

3 添加事件处理程序

在任何应用程序中,交互都必须依托于事件和事件处理程序。举个例子,添加一个单击处理程序droid图像视图并在用户每次触摸图片都会显示一条消息。在Java,事件处理程序应采用以下形式:

private View.OnClickListener droidTapListener;

 

将之添加到MyActivity类并在InitializeAppmethod方法中初始化:

private void InitializeApp()
{
    message = (TextView) findViewById(R.id.message);
    droid = (ImageView) findViewById(R.id.imageView);
 
    // Define and attach listeners
    droidTapListener = new View.OnClickListener()  {
        public void onClick(View v) {
           TapDroid();
        }
    };
    droid.setOnClickListener(droidTapListener);
}

 

这段代码的产生的效果是,每当用户单击图像,TapDroidmethod都会被调用。

4 处理单击事件

TapDroidmethod只是用来记录用户触摸图片的次数,并显示一个汇总信息。需要添加到MyActivity类用来记录点击次数:

public class MyActivity extends Activity
{
    private TextView message;
    private ImageView droid;
    private View.OnClickListener droidTapListener;
    private int counter = 0;
 
    // More code goes here ...
 
 
}

 

接下来,定义TapDroidas方法如下:

 

5 构建应用程序的最终版本

示例应用程序现已经完成,已经可以构建和部署到设备中。一旦准备好了,点击显示的图像,并查看用户界面的修改情况。

 


之后剩下的步骤就是如何编写单元测试并将应用程序到app store里面。


 

猜你喜欢

转载自doufoucai.iteye.com/blog/1946385