- html - 出于某种原因,IE8 对我的 Sass 文件中继承的 html5 CSS 不友好?
- JMeter 在响应断言中使用 span 标签的问题
- html - 在 :hover and :active? 上具有不同效果的 CSS 动画
- html - 相对于居中的 html 内容固定的 CSS 重复背景?
我在尝试使用按钮onClick事件运行的AsyncTask遇到一些麻烦。我让它在“HomePageActivity”中工作,但是随后将代码转移到了一个新的 Activity 中,现在,当单击按钮时,应用程序崩溃了。它曾经完美地工作。
谁能帮我解决这个问题?
我敢肯定,很容易就能发现新的一双眼睛。
public class GamesOverview extends HomePageActivity {
public final static String BaseUrl="http://URL.com/";
ArrayList<DEPT_HOLD> deptList=new ArrayList<DEPT_HOLD>();
private class GetDeptAyncTask extends AsyncTask<Hashtable<String,String>,Void,String>{
// Parse in background
@Override
protected String doInBackground(Hashtable<String,String>... params) {
@SuppressWarnings("rawtypes")
Hashtable ht=params[0];
@SuppressWarnings("unchecked")
String json=HelperHttp.getJSONResponseFromURL(BaseUrl+"JSONURLGOESHERE", ht);
if(json!=null) parseJsonString(deptList,json);
else {
return "Invalid Company Id";
}
return "SUCCESS";
}
// Parse JSON
protected void parseJsonString(ArrayList<DEPT_HOLD> deptList,String json) {
try {
JSONObject top = new JSONObject(json);
JSONObject topAdds = (JSONObject) top.get("topAdds");
JSONArray array = (JSONArray) topAdds.get("player");
for(int i = 0; i < array.length(); i++) {
JSONObject j = array.getJSONObject(i);
DEPT_HOLD d = new DEPT_HOLD();
d.one = j.optString("percent","");
d.two = j.optString("id","");
deptList.add(d);
}
} catch (JSONException e) {
e.printStackTrace();
}
}
// Execute post
@Override
protected void onPostExecute(String result) {
if(result=="SUCCESS") {
Toast.makeText(GamesOverview.this, "Success"+deptList, Toast.LENGTH_SHORT).show();
DeptArrayAdapter adapter=new DeptArrayAdapter(GamesOverview.this,R.id.text1,deptList);
ListView listv=(ListView)findViewById(R.id.lv);
listv.setAdapter(adapter);
}
else{}
}
}
public void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
// Scrolling
ScrollView scroll;
scroll = new ScrollView(this);
HorizontalScrollView horizontalscroll;
horizontalscroll = new HorizontalScrollView(this);
// End
// Get JSON button
final Button JSONButton = new Button(this);
JSONButton.setText("Get JSON");
JSONButton.setTextSize(20);
JSONButton.setTextColor(Color.rgb(000,000,000));
JSONButton.setOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View v) {
executeAsyncTask();
}
});
// End
// LAYOUT
LinearLayout layout = new LinearLayout(this);
layout.setOrientation(LinearLayout.VERTICAL);
layout.setLayoutParams(new LayoutParams(LayoutParams.FILL_PARENT,LayoutParams.WRAP_CONTENT));
LinearLayout.LayoutParams layoutparams = new LinearLayout.LayoutParams(getWindowManager().getDefaultDisplay().getWidth(),getWindowManager().getDefaultDisplay().getHeight());
layout.setGravity(Gravity.CENTER_HORIZONTAL);
layout.setBackgroundResource(R.drawable.body_bg);
// DisplayJSONButton
LinearLayout displayJSONButtonlayout = new LinearLayout(this);
displayJSONButtonlayout.setOrientation(LinearLayout.HORIZONTAL);
displayJSONButtonlayout.setLayoutParams(new LayoutParams(LayoutParams.FILL_PARENT,LayoutParams.WRAP_CONTENT));
LinearLayout.LayoutParams displayJSONButtonlayout_params = new LinearLayout.LayoutParams(getWindowManager().getDefaultDisplay().getWidth()-50,100);
displayJSONButtonlayout_params.setMargins(0,10,0,0);
displayJSONButtonlayout.setGravity(Gravity.CENTER_HORIZONTAL);
displayJSONButtonlayout.addView(JSONButton,displayJSONButtonlayout_params);
// END LAYOUT
layout.addView(displayJSONButtonlayout);
layout.requestLayout();
// Enable scrolling
scroll.addView(layout,layoutparams);
horizontalscroll.addView(scroll);
// Set content view
setContentView(horizontalscroll);
}
// Finish up task
@SuppressWarnings("unchecked")
private void executeAsyncTask(){
Hashtable<String,String> ht=new Hashtable<String,String>();
GetDeptAyncTask async=new GetDeptAyncTask();
ht.put("", "");
@SuppressWarnings("rawtypes")
Hashtable[] ht_array={ht};
async.execute(ht_array);
}
}
?:??: W/?(?): URL==>http://football.myfantasyleague.com/2007/export?TYPE=topAdds&W=12&JSON=1?=
?:??: W/?(?): Forward DNS query to netd(h=football.myfantasyleague.com s=^)
?:??: W/?(?): at myfantasyleague.app.GamesOverview$GetDeptAyncTask.onPostExecute(GamesOverview.java:73)
?:??: W/?(?): at myfantasyleague.app.GamesOverview$GetDeptAyncTask.onPostExecute(GamesOverview.java:1)
?:??: W/?(?): Force finishing activity myfantasyleague.app/.GamesOverview
?:??: W/?(?): read: 04-02 14:42:47.990 464 474 W ActivityManager: Force finishing activity myfantasyleague.app/.GamesOverview
?:??: W/?(?): app: myfantasyleague.app
?:??: W/?(?): Activity pause timeout for ActivityRecord{41881918 myfantasyleague.app/.GamesOverview}
?:??: W/?(?): read: 04-02 14:42:48.521 464 477 W ActivityManager: Activity pause timeout for ActivityRecord{41881918 myfantasyleague.app/.GamesOverview}
?:??: W/?(?): ACTION_PACKAGE_REMOVED: myfantasyleague.app
?:??: W/?(?): dummy: {}]
?:??: W/?(?): 卸载了:myfantasyleague.app
?:??: W/?(?): myfantasyleague.app
?:??: W/?(?): PackageMonitor: doOnReceive(): android.intent.action.PACKAGE_REMOVED [myfantasyleague.app] REPLACING:true
?:??: W/?(?): dummy: {}]
?:??: W/?(?): PackageMonitor: doOnReceive(): android.intent.action.PACKAGE_REMOVED [myfantasyleague.app] REPLACING:true
?:??: W/?(?): PackageMonitor: doOnReceive(): android.intent.action.PACKAGE_ADDED [myfantasyleague.app] REPLACING:true
?:??: W/?(?): Activity idle timeout for ActivityRecord{4184f330 myfantasyleague.app/.MyFantasyLeagueActivity}
?:??: W/?(?): PackageMonitor: doOnReceive(): android.intent.action.PACKAGE_ADDED [myfantasyleague.app] REPLACING:true
?:??: W/?(?): read: 04-02 14:42:58.560 464 477 W ActivityManager: Activity idle timeout for ActivityRecord{4184f330 myfantasyleague.app/.MyFantasyLeagueActivity}
?:??: W/?(?): dummy: {}]
?:??: W/?(?): Activity pause timeout for ActivityRecord{4184f330 myfantasyleague.app/.MyFantasyLeagueActivity}
?:??: W/?(?): read: 04-02 14:43:48.631 464 477 W ActivityManager: Activity pause timeout for ActivityRecord{4184f330 myfantasyleague.app/.MyFantasyLeagueActivity}
?:??: W/?(?): dummy: {}]
?:??: W/?(?): Activity destroy timeout for ActivityRecord{41881918 myfantasyleague.app/.GamesOverview}
?:??: W/?(?): Activity stop timeout for ActivityRecord{4184f330 myfantasyleague.app/.MyFantasyLeagueActivity}
?:??: W/?(?): read: 04-02 14:43:58.857 464 477 W ActivityManager: Activity destroy timeout for ActivityRecord{41881918 myfantasyleague.app/.GamesOverview}
?:??: W/?(?): read: 04-02 14:43:58.857 464 477 W ActivityManager: Activity stop timeout for ActivityRecord{4184f330 myfantasyleague.app/.MyFantasyLeagueActivity}
?:??: W/?(?): This window was lost: Window{425b0c78 myfantasyleague.app/myfantasyleague.app.GamesOverview paused=false}
?:??: W/?(?): mToken=AppWindowToken{424bb208 token=Token{425d1e10 ActivityRecord{41881918 myfantasyleague.app/.GamesOverview}}}
?:??: W/?(?): mRootToken=AppWindowToken{424bb208 token=Token{425d1e10 ActivityRecord{41881918 myfantasyleague.app/.GamesOverview}}}
?:??: W/?(?): mAppToken=AppWindowToken{424bb208 token=Token{425d1e10 ActivityRecord{41881918 myfantasyleague.app/.GamesOverview}}}
?:??: W/?(?): mSurface=Surface(name=myfantasyleague.app/myfantasyleague.app.GamesOverview, identity=7073)
?:??: W/?(?): #16: Token{421d65e8 ActivityRecord{4184f330 myfantasyleague.app/.MyFantasyLeagueActivity}}
?:??: W/?(?): #4: Window{42513558 myfantasyleague.app/myfantasyleague.app.MyFantasyLeagueActivity paused=false}
?:??: W/?(?): dummy: {}]
?:??: W/?(?): dummy: {}]
?:??: W/?(?): dummy: {}]
?:??: W/?(?): Activity idle timeout for ActivityRecord{4184f330 myfantasyleague.app/.MyFantasyLeagueActivity}
?:??: W/?(?): read: 04-02 14:44:09.037 464 477 W ActivityManager: Activity idle timeout for ActivityRecord{4184f330 myfantasyleague.app/.MyFantasyLeagueActivity}
?:??: W/?(?): WIN DEATH: Window{42513558 myfantasyleague.app/myfantasyleague.app.MyFantasyLeagueActivity paused=false}
?:??: W/?(?): Process myfantasyleague.app (pid 14733) has died.
?:??: W/?(?): read: 04-02 14:44:40.935 464 866 I ActivityManager: Process myfantasyleague.app (pid 14733) has died.
?:??: W/?(?): Force removing ActivityRecord{4184f330 myfantasyleague.app/.MyFantasyLeagueActivity}: app died, no saved state
?:??: W/?(?): WIN DEATH: Window{425b0c78 myfantasyleague.app/myfantasyleague.app.GamesOverview paused=false}
?:??: W/?(?): read: 04-02 14:44:40.935 464 866 W ActivityManager: Force removing ActivityRecord{4184f330 myfantasyleague.app/.MyFantasyLeagueActivity}: app died, no saved state
?:??: W/?(?): dummy: {}]
最佳答案
根据您的logcat,直到onpostexecute()完美为止,
我认为您正在等待从以下网址获得一些结果
这会导致延迟并结束您的 Activity 。
http://football.myfantasyleague.com/2007/export?TYPE=topAdds&W=12&JSON=1?=
关于android - 执行AsyncTask时onClick崩溃的应用程序,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/15772489/
我正在通过 labrepl 工作,我看到了一些遵循此模式的代码: ;; Pattern (apply #(apply f %&) coll) ;; Concrete example user=> (a
我从未向应用商店提交过应用,但我会在不久的将来提交。 到目前为止,我对为 iPhone 而非 iPad 进行设计感到很自在。 我了解,通过将通用PAID 应用放到应用商店,客户只需支付一次就可以同时使
我有一个应用程序,它使用不同的 Facebook 应用程序(2 个不同的 AppID)在 Facebook 上发布并显示它是“通过 iPhone”/“通过 iPad”。 当 Facebook 应用程序
我有一个要求,我们必须通过将网站源文件保存在本地 iOS 应用程序中来在 iOS 应用程序 Webview 中运行网站。 Angular 需要服务器来运行应用程序,但由于我们将文件保存在本地,我们无法
所以我有一个单页客户端应用程序。 正常流程: 应用程序 -> OAuth2 服务器 -> 应用程序 我们有自己的 OAuth2 服务器,因此人们可以登录应用程序并获取与用户实体关联的 access_t
假设我有一个安装在用户设备上的 Android 应用程序 A,我的应用程序有一个 AppWidget,我们可以让其他 Android 开发人员在其中以每次安装成本为基础发布他们的应用程序推广广告。因此
Secrets of the JavaScript Ninja中有一个例子它提供了以下代码来绕过 JavaScript 的 Math.min() 函数,该函数需要一个可变长度列表。 Example:
当我分别将数组和对象传递给 function.apply() 时,我得到 NaN 的 o/p,但是当我传递对象和数组时,我得到一个数字。为什么会发生这种情况? 由于数组也被视为对象,为什么我无法使用它
CFSDN坚持开源创造价值,我们致力于搭建一个资源共享平台,让每一个IT人在这里找到属于你的精彩世界. 这篇CFSDN的博客文章ASP转换格林威治时间函数DateDiff()应用由作者收集整理,如果你
我正在将列表传递给 map并且想要返回一个带有合并名称的 data.frame 对象。 例如: library(tidyverse) library(broom) mtcars %>% spl
我有一个非常基本的问题,但我不知道如何实现它:我有一个返回数据框,其中每个工具的返回值是按行排列的: tmp<-as.data.frame(t(data.frame(a=rnorm(250,0,1)
我正在使用我的 FB 应用创建群组并邀请用户加入我的应用群组,第一次一切正常。当我尝试创建另一个组时,出现以下错误: {"(OAuthException - #4009) (#4009) 在有更多用户
我们正在开发一款类似于“会说话的本”应用程序的 child 应用程序。它包含大量用于交互式动画的 JPEG 图像序列。 问题是动画在 iPad Air 上播放正常,但在 iPad 2 上播放缓慢或滞后
我关注 clojure 一段时间了,它的一些功能非常令人兴奋(持久数据结构、函数式方法、不可变状态)。然而,由于我仍在学习,我想了解如何在实际场景中应用,证明其好处,然后演化并应用于更复杂的问题。即,
我开发了一个仅使用挪威语的应用程序。该应用程序不使用本地化,因为它应该仅以一种语言(挪威语)显示。但是,我已在 Info.plist 文件中将“本地化 native 开发区域”设置为“no”。我还使用
读完 Anthony's response 后上a style-related parser question ,我试图说服自己编写单体解析器仍然可以相当紧凑。 所以而不是 reference ::
multicore 库中是否有类似 sapply 的东西?还是我必须 unlist(mclapply(..)) 才能实现这一点? 如果它不存在:推理是什么? 提前致谢,如果这是一个愚蠢的问题,我们深表
我喜欢在窗口中弹出结果,以便更容易查看和查找(例如,它们不会随着控制台继续滚动而丢失)。一种方法是使用 sink() 和 file.show()。例如: y <- rnorm(100); x <- r
我有一个如下所示的 spring mvc Controller @RequestMapping(value="/new", method=RequestMethod.POST) public Stri
我正在阅读 StructureMap关于依赖注入(inject),首先有两部分初始化映射,具体类类型的接口(interface),另一部分只是实例化(请求实例)。 第一部分需要配置和设置,这是在 Bo
我是一名优秀的程序员,十分优秀!