小编nki*_*nki的帖子

从错误的线程异常调用

我正在尝试开发一个使用线程来实现幻灯片放映的应用程序.我正在从SQLite中检索图像路径并在ImageView上显示它们.问题,我被击中了,我感到困惑,所以我无法理解,我从哪个线程调用images()方法,我实际上是在实现幻灯片.

我得到了Logcat如下 -

    09-03 13:47:00.248: E/AndroidRuntime(10642): FATAL EXCEPTION: Thread-151
09-03 13:47:00.248: E/AndroidRuntime(10642): android.view.ViewRootImpl$CalledFromWrongThreadException: Only the original thread that created a view hierarchy can touch its views.
09-03 13:47:00.248: E/AndroidRuntime(10642):    at android.view.ViewRootImpl.checkThread(ViewRootImpl.java:5908)

09-03 13:47:00.248: E/AndroidRuntime(10642):    at com.example.fromstart.MainActivity.images(MainActivity.java:90)
09-03 13:47:00.248: E/AndroidRuntime(10642):    at com.example.fromstart.MainActivity$2.run(MainActivity.java:59)
09-03 13:47:00.248: E/AndroidRuntime(10642):    at java.lang.Thread.run(Thread.java:841)
Run Code Online (Sandbox Code Playgroud)

MainActivity.java:

public class MainActivity extends Activity
{
    ImageView jpgView;
    TextView tv;

    //adapter mDbAdapter;   
    adapter info = new adapter(this);
    String path; 
    Handler smHandler = new Handler() 
    {
        public void handleMessage(Message msg) 
        {
            TextView myTextView = …
Run Code Online (Sandbox Code Playgroud)

java multithreading android

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

如何从SELECT查询返回的一组值中获取最小值?

我编写了一个SELECT查询,它将返回一组值,例如,

以下是实际表格 -

在此输入图像描述

select data from tab1 where id <5; // This statement returns me the following table
Run Code Online (Sandbox Code Playgroud)

在此输入图像描述

我试图获得结果表的最小值.我已经尝试了以下查询 -

select MIN(select data from tab1 where id<5);
Run Code Online (Sandbox Code Playgroud)

SQLite Browser说,select语句中有一个错误.我怀疑的是,我们是否可以将一个select语句直接赋予像MIN()这样的聚合函数?如果没有,你能否建议我更好的方法来完成这项任务?

提前致谢.

mysql sql sqlite

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

java.lang.IllegalStateException:使用ArrayAdapter <String>在onCreate()之前,活动不可用的系统服务

我正在尝试运行ListActivity,它接受一个文件名数组,这些文件名将被插入到数据库中.这可以通过insert()以下代码完成.我收到了IllegalStateException ArrayAdapter<String>.如果我insert()从另一个类调用该函数.所以,我无法在onCreate()方法中定义ArrayAdapter .请参阅以下代码,这是定义insert()方法 -

public class FileEvent extends ListActivity implements ObserverActivity{
public static final String PREFS_NAME = "MyPreferencesFile";

public String filename;
public String path; 
MyFileObserver myFileObserver; 
public adapter info ;
ArrayAdapter<String> adapterarr;
ListView listView;
@Override
protected void onCreate(Bundle savedInstanceState) {
    // TODO Auto-generated method stub
    super.onCreate(savedInstanceState);
   this.info  = new adapter(this);
    listView = (ListView) findViewById(android.R.id.list);
    setContentView(R.layout.fileeventlist);
    Bundle bundle = getIntent().getExtras();

    myFileObserver = new MyFileObserver("/storage/sdcard/DCIM/SAMPLE_IMAGES/");
        myFileObserver.registerObserver(this);
        myFileObserver.startWatching();

/*  String var_from_prev_intent = bundle.getString("path");
    insert(var_from_prev_intent); …
Run Code Online (Sandbox Code Playgroud)

java android

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

标签 统计

android ×2

java ×2

multithreading ×1

mysql ×1

sql ×1

sqlite ×1