小编Ada*_*dam的帖子

加载活动时显示进度条

我有一个基于列表选择ListActivity启动另一个Activity.第二个Activity需要从互联网上加载相当数量的数据,因此在用户点击项目和Activity显示时间之间存在明显的延迟.

这是一个问题,因为我目前无法向用户表明他们的点击正在被处理(即使只是更改所选列表项的颜色就足够了,但我找不到一个好方法).理想情况下,我可以ProgressDialog在第二个Activity加载时显示不确定的信息.

我已经为此尝试了一些不同的方法,但似乎没有任何工作.


我尝试过以下方法:

  • 在第一个AsyncTask中检索可序列化数据(不是全部而是部分)Activity,并将其作为额外的数据传递给第二个.这并没有真正起作用,因为ProgressDialog我创建的onPreExecute()并没有立即显示(doInBackground()由于某些原因,它似乎延迟了处理.)

这是代码:

AsyncTask<String, Void, String> read = new AsyncTask<String, Void, String>() {
    Dialog progress;

    @Override
    protected void onPreExecute() {
        progress = ProgressDialog.show(SearchActivity.this, 
                "Loading data", "Please wait...");
        super.onPreExecute();
    }

    @Override
    protected String doInBackground(String... params) {
        DatasetReader reader = new DatasetReader();
        reader.setFundID(params[0]);
        reader.addDatsets(FundProfile.datasets);
        reader.populate();
        return reader.toString();
    }

    @Override
    protected void onPostExecute(String result) {
        super.onPostExecute(result);
        progress.dismiss();
    } …
Run Code Online (Sandbox Code Playgroud)

android progressdialog android-asynctask

20
推荐指数
1
解决办法
5万
查看次数

查看与可见性状态GONE占用屏幕上的空间

我遇到一个问题,其中可见性状态为GONE的视图(不合需要地)占用屏幕上的空间.始终在API级别<= 7设备上出现此问题,但最近仅在8个以上的设备上发生(在我使用AsyncTasks填充某些字段后,根据"加载活动时显示进度条")

一点上下文:我创建了一个扩展LinearLayout的自定义视图,其中包含一个"标题"按钮和(用户定义;在某些情况下,它是一些TextViews,在其他情况下,它是TableLayouts)"contents".这个视图的目的是切换内容onClick标题按钮的视图(我不相信有一个内置的小部件...我可能是错的).

在onLayout()中,我明确地将所有子视图的可见性状态设置为GONE,第一次绘制时除了标题:

protected void onLayout(boolean changed, int l, int t, int r, int b) {
    if(initialDraw) {
        setContentsVisible(false);
        initialDraw = false;
    }
    super.onLayout(changed, l, t, r, b);
}

public void setContentsVisible(boolean visible) {
    for(int i = 0; i < getChildCount(); i++) {
        View child = getChildAt(i);

        if(child != mTitle) {
            child.setVisibility(visible ? VISIBLE : GONE);
        }
    }
}
Run Code Online (Sandbox Code Playgroud)

android android-widget android-layout

7
推荐指数
1
解决办法
1704
查看次数

Android安装 - sdk manager.exe不起作用

我从developer.android.com for Windows安装了android SDK(installer_r08-windows.exe).我安装到默认位置,C:\ Program Files\Android\android-sdk-windows.当我尝试运行SDK Manager.exe时,会弹出一个控制台窗口,但会消失..没有其他事情发生.如果我尝试从命令行运行它,也没有任何事情发生(并且没有输出).

我安装了JDK 1.6.0_20,并且JAVA_HOME环境变量指向此文件夹(C:\ Program Files\Java\jdk1.6.0_20)

救命?

android

5
推荐指数
1
解决办法
3万
查看次数

WebView中的字符集(Android)

我试图使用loadData()方法在WebView中显示Java String中的一些数据:

wv.loadData(myString, "text/html, "utf-8");
Run Code Online (Sandbox Code Playgroud)

我遇到的问题是WebView破坏了非ASCII(我假设?)字符的输出.如果我使用TextView而不是WebView,则不会出现此问题,并且文本显示正确(尽管涉及一些HTML标记,因此最终不需要TextView).

如果有帮助,当我运行以下代码时:

for(int i = 0; i < myString.length() && i < 400; i++)
      Log.i("Text", myString.charAt(i) + ": " + (int) myString.charAt(i));
Run Code Online (Sandbox Code Playgroud)

一个有问题的字符在日志中显示如下:

05-27 13:15:45.110:INFO/Text(606):â:8217

我认为这是一个字符集问题,但我不太清楚如何解决它.

这是HTML的一小部分(我不确定我的雇主是否允许完整发布内容):

突尼斯总理

这是'造成问题的角色'.注意:我正在显示的不是一个完整形成的HTML页面..只是带有HTML标记的文本,如果这很重要..

android character-encoding android-webview

1
推荐指数
1
解决办法
2484
查看次数