ThinkAndroid

在初次学习ThinkAndroid ,导入jar包,准备运行第一步demo时,报出java.lang.RuntimeException: Unable to start activity ComponentInfo{com.example.thinkandroidmvc/com.example.thinkandroidmvc.MainActivity}: java.lang.ClassCastException: android.app.Application cannot be cast to com.ta.TAApplication
解决:只需application添加android:name=”com.ta.TAApplication”就ok了

实现MVC的功能代码如下:
package com.example.thinkandroidmvc;

import java.util.ArrayList;

import android.os.Bundle;
import android.view.View;
import android.widget.Button;
import android.widget.EditText;
import android.widget.TextView;
import android.widget.Toast;

import com.ta.TAActivity;
import com.ta.annotation.TAInjectView;
import com.ta.mvc.command.TAIdentityCommand;
import com.ta.mvc.common.TAIResponseListener;
import com.ta.mvc.common.TARequest;
import com.ta.mvc.common.TAResponse;
import com.ta.util.TALogger;
import com.ta.util.log.TAPrintToFileLogger;

public class MainActivity extends TAActivity {
@TAInjectView(id = R.id.tv)
TextView mtv;
@TAInjectView(id = R.id.btn)
Button mbtn;
@TAInjectView(id = R.id.et)
EditText met;
@Override
protected void onAfterOnCreate(Bundle savedInstanceState) {
// TODO Auto-generated method stub
super.onAfterOnCreate(savedInstanceState);
setContentView(R.layout.activity_main);

}

@Override
protected void onAfterSetContentView() {
    super.onAfterSetContentView();
    mbtn.setOnClickListener(new View.OnClickListener() {

        @Override
        public void onClick(View v) {
            // TODO Auto-generated method stub
            String strJson = "{\"students\":[{\"name\":\"Jack\",\"age\":12}, {\"name\":\"Vista\",\"age\":23}, {\"name\":\"Kaka\",\"age\":22}, {\"name\":\"Hony\",\"age\":31}]}";
            //初始化化TestMVCCommand(继承过TACommand)
            getTAApplication().registerCommand(R.string.testmvccommand,
                    TestMVCCommand.class);
            //添加日志打印
            TALogger.addLogger(new TAPrintToFileLogger());
            TARequest request = new TARequest();
            request.setData(strJson);

// Toast.makeText(getApplicationContext(), “点我呀”, 0).show();
doCommand(R.string.testmvccommand, request,
new TAIResponseListener()
{

                        @Override
                        public void onStart()
                        {
                            // TODO Auto-generated method stub
                            mtv.setText("onStart");
                        }

                        @Override
                        public void onSuccess(TAResponse response)
                        {
                            // TODO Auto-generated method stub

                            String tempString = "";
                            @SuppressWarnings("unchecked")
                            ArrayList<StudyEntity> arrayList = (ArrayList<StudyEntity>) response
                                    .getData();
                            for (int i = 0; i < arrayList.size(); i++)
                            {
                                StudyEntity studyEntity = arrayList.get(i);
                                tempString = tempString
                                        + studyEntity.toString();
                            }
                            mtv.setText(tempString);
                        }

                        @Override
                        public void onRuning(TAResponse response)
                        {
                            // TODO Auto-generated method stub

// met.setText(“onRuning”);
}

                        @Override
                        public void onFailure(TAResponse response)
                        {
                            // TODO Auto-generated method stub

// met.setText(“onFailure”);
}

                        @Override
                        public void onFinish()
                        {
                            // TODO Auto-generated method stub

// met.setText(“onFinish”);
}

                    }, false);

        }
    });
}

}
注意:要是运行的时候出现闪退,一般是TestMVCCommand对象没初始化或者是实现不对。不过说实话用框架最大的不好就是报错了难找,真心难找

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值