小编Ada*_*dam的帖子

如何在搜索栏上显示某些值作为默认值?

我有一个搜索栏例如:从0到10.如果我想将搜索栏设置为5作为默认位置,我该怎么做.所以在这个例子中,seekbar应该从中间开始.

android default seekbar

29
推荐指数
2
解决办法
4万
查看次数

如何在微调器中设置位置?

我从系统文件中读取BufferedReader文本; 例如,该文本包含5个单词,但在另一个案例中,它可以包含更少或更多的单词.然后我将此文本(提到的单词)放入SINGLE字符串并将该字符串保存到共享首选项.然后我用这个字符串做了一个微调器.代码如下:

Spinner spinner = new Spinner(this);
    ArrayAdapter<String> spinnerArrayAdapter = new ArrayAdapter<String>(this, android.R.layout.simple_spinner_dropdown_item, yourString.split(" "));
    spinner.setAdapter(spinnerArrayAdapter);
Run Code Online (Sandbox Code Playgroud)

然后我从另一个文件中读取文本.此文本始终包含一个单词.这个词与我从第一个文件中读取的一个单词相同(例如,如果我读到的第一个文件包含5个单词,其中一个单词是"黑色",那么我读到的第二个文件也是包含"黑色").我需要将这个特定的单词(存在于两个文件中)作为我的微调器中的默认选择选项.

例如:

第一个字符串包含:红色,蓝色,黄色,黑色,白色

第二个字符串包含:黄色

我从第一个字符串创建一个微调器,所以spinner中的选项填充如下:"红色,蓝色,黄色,黑色,白色",默认选择的选项是红色(因为它恰好是我的第一个字符串中的第一个),但在这种情况下,我需要将黄色设为默认选项,因为第二个字符串包含"黄色".两个字符串中的单词总是不同的.

BTW:我知道如何在微调器中保存位置,但如果我比较两个字符串并且其中一个包含更多单词,我不知道如何在微调器中设置位置.

android position file set spinner

20
推荐指数
3
解决办法
6万
查看次数

如何获得下载状态?

我使用DownloadManager获取下载状态,但它仍然不起作用,它从不跳到条件if(c.moveToFirst()),我不知道为什么.请问有人帮帮我吗?

private final BroadcastReceiver myReceiver = new BroadcastReceiver() {
        @Override
        public void onReceive(Context context, Intent intent) {
            String action = intent.getAction();

            if(Intent.ACTION_SCREEN_OFF.equals(action)) {

                DownloadManager downloadMgr = (DownloadManager)getSystemService(DOWNLOAD_SERVICE);
                DownloadManager.Query query = new DownloadManager.Query();
                query.setFilterByStatus(DownloadManager.STATUS_FAILED|DownloadManager.STATUS_PENDING|DownloadManager.STATUS_RUNNING|DownloadManager.STATUS_SUCCESSFUL);
                Cursor c = downloadMgr.query(query);
                if(c==null) {
                    //
                }
                else {
                    if(c.moveToFirst()) {
                        int columnIndex = c.getColumnIndex(DownloadManager.COLUMN_STATUS);
                        int status = c.getInt(columnIndex);
                        if(status == DownloadManager.STATUS_RUNNING){
                        //do something
                        }
                    }
                }
            }
        }
    };
Run Code Online (Sandbox Code Playgroud)

android download download-manager

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

为什么这个游标是空的?

我有例如按钮,当用户点击它时我想通过DownloadManager查找下载历史记录,但问题是我的光标是空的,它永远不会进入条件if(c.moveToFirst()),它总是跳过这个条件.

DownloadManager downloadMgr = (DownloadManager)getSystemService(DOWNLOAD_SERVICE);
                DownloadManager.Query query = new DownloadManager.Query();
                query.setFilterByStatus(DownloadManager.STATUS_FAILED|DownloadManager.STATUS_PENDING|DownloadManager.STATUS_RUNNING|DownloadManager.STATUS_SUCCESSFUL);
                Cursor c = downloadMgr.query(query);
                if(c==null) {
                    //
                }
                else {
                    if(c.moveToFirst()) {
                        int columnIndex = c.getColumnIndex(DownloadManager.COLUMN_STATUS);
                        int status = c.getInt(columnIndex);
                        if(status == DownloadManager.STATUS_RUNNING){
                        //do something
                        }
                    }
                }
Run Code Online (Sandbox Code Playgroud)

我也试过这个代码(由imran khan),但仍然是同样的问题:

DownloadManager.Query query = null;
    Cursor c = null;
    DownloadManager downloadManager = null;
    downloadManager = (DownloadManager)getSystemService(DOWNLOAD_SERVICE);
    query = new DownloadManager.Query();
    query.setFilterByStatus(DownloadManager.STATUS_FAILED|DownloadManager.STATUS_PENDING|DownloadManager.STATUS_RUNNING|DownloadManager.STATUS_SUCCESSFUL);
    c = downloadManager.query(query);
    if(c.moveToFirst()) { 
    int status = c.getInt(c.getColumnIndex(DownloadManager.COLUMN_STATUS)); 
    switch(status) { 
    case DownloadManager.STATUS_PAUSED: 
    break; 
    case DownloadManager.STATUS_PENDING: 
    break; 
    case DownloadManager.STATUS_RUNNING: …
Run Code Online (Sandbox Code Playgroud)

android download cursor download-manager

7
推荐指数
0
解决办法
930
查看次数

为什么不能将INT保存到SharedPreferences?

我有一个奇怪的问题。我从来没有过 当我尝试将int值保存到我的SharedPreference中,然后在其他Activity中恢复时。即使我将其他值保存在那里,值也始终为0(例如:1);

private String Number;
private String Profile;
Run Code Online (Sandbox Code Playgroud)

然后在第一个活动中将值(在这种情况下为“ 1”)保存到SharedPreferences中:

SharedPreferences a = FirstActivity.this.getSharedPreferences("a", MODE_PRIVATE);
SharedPreferences.Editor prefsEditorProfiles = a.edit();
prefsEditorProfiles.putInt(Profile, 1);
prefsEditorProfiles.putInt(Number, 1);
prefsEditorProfiles.commit();
Run Code Online (Sandbox Code Playgroud)

然后在其他活动中还原SharedPreferences:

SharedPreferences a = SecondActivity.this.getSharedPreferences("a", MODE_PRIVATE);
int ab = a.getInt(Number, 0);
Run Code Online (Sandbox Code Playgroud)

应用程序显示0而不是1。我的其他SharedPreferences效果很好。我不知道问题出在哪里。

int android save sharedpreferences android-activity

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

如何从ListPreference中选择选项?

我有ListPreference,它包含例如5个选项,我想在用户选择它时将其中一个值保存到SharedPreferences.我该怎么做?

顺便说一句.我知道如何为SharedPreferences节省价值,但是当用户选择其中一个时,我不知道如何获得该值.

android preferences selected listpreference

5
推荐指数
2
解决办法
8048
查看次数

为什么小部件在重启后不起作用?

我有这个简单的小部件,当我点击它时,它应该打开我的活动,它可以工作,但在重新启动后它不起作用。我必须删除然后再次将小部件添加到我的主屏幕,因为当我点击小部件时,小部件没有响应,也没有打开我的活动。那么问题出在哪里呢?

代码:

public void onUpdate(Context context, AppWidgetManager appWidgetManager, int[] appWidgetIds) {
        final int N = appWidgetIds.length;

        for(int i=0; i<N; i++){
            int appWidgetId = appWidgetIds[i];

            context.startService(new Intent(context, WidgetService.class));

            Intent intent = new Intent(context, WidgetDialog.class);
            PendingIntent pendingIntent = PendingIntent.getActivity(context, 0, intent, 0);

            RemoteViews views = new RemoteViews(context.getPackageName(), R.layout.widget);
            views.setOnClickPendingIntent(R.id.layout_widget, pendingIntent);

            appWidgetManager.updateAppWidget(appWidgetId, views);
        }
    }

    @Override
    public void onEnabled(Context context){
        context.startService(new Intent(context, WidgetService.class));
    }

    @Override
    public void onDisabled(Context context){
        context.stopService(new Intent(context, WidgetService.class));
    }
Run Code Online (Sandbox Code Playgroud)

android reboot widget

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

如何在Unix中查找和删除文件中的行?

我有一个文件(例如:test.txt),这个文件包含一些行,例如一行是:abcd = 11但它可以是例如:abcd = 12数字不同但是abcd =在所有情况下都是相同的,那么任何人都可以命令我找到这条线并删除它吗?

我试过了:sed -e \"/$abcd=/d\" /test.txt >/test.txt但它删除了我文件中的所有行,我也试过了:sed -e \"/$abcd=/d\" /test.txt >/testNew.txt但是它不会从test.txt中删除行,它只会创建新文件(testNew.txt)并在此文件中删除我的行.但这不是我想要的.

unix file line find

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

如何使用minSDK 7设置ICS主题应用程序?

任何人都可以告诉我如何为我的应用程序设置一个主题,当Android版本发生变化时,该主题会发生变化.例如,如果有人在Android 2.1主题上使用我的应用程序将如下所示:http://daily-money.googlecode.com/svn/wiki/img/prefs.png

但是如果有人会使用我的应用程序,例如Android 4.0.3主题将如下所示:http: //img.tapatalk.com/dcff019c-27ba-1e1a.jpg我使用过minSDK 7.

谢谢.

android themes styles android-4.0-ice-cream-sandwich

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

如何在一小时之内启动AlarmManager?

如何在最近的一小时内启动AlarmManager?例如,当用户点击按钮并且时间是12:32时,我想在13:00开始服务,然后每小时重复一次,我尝试了这段代码,但它不起作用,它只在一小时后启动AlarmManager,所以如果时间是12:32,它将在13:32开始服务.

Calendar cal = Calendar.getInstance();
        cal.set(Calendar.HOUR_OF_DAY, cal.get(Calendar.HOUR_OF_DAY)+1);

        AlarmManager alarm = (AlarmManager)myService.this.getSystemService(Context.ALARM_SERVICE);
        Intent i = new Intent(myService.this, AlarmReceiver.class);
        PendingIntent pIntent = PendingIntent.getBroadcast(BatteryService.this, 0, i, 0);
        alarm.setRepeating(AlarmManager.RTC_WAKEUP, cal.getTimeInMillis(), 1000*60*60, pIntent);
Run Code Online (Sandbox Code Playgroud)

android alarmmanager

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

如何检查循环中文件夹是否为空?

我有一个问题,我知道如何检查文件夹是否为空,但我总是得到一个错误,当我检查文件夹是否为空循环,这是我的代码不起作用的示例.

String sdcard = Environment.getExternalStorageDirectory().toString();
        File file = new File(sdcard);
        File subFiles[] = file.listFiles();
        for(int i=0; i<subFiles.length; i++) {
            File subFile = new File(sdcard +"/"+ subFiles[i].getName());
            if(subFile.isDirectory() && subFile.listFiles().length==0) {

            }
        }
Run Code Online (Sandbox Code Playgroud)

我总是在我的情况下得到错误.

directory android for-loop is-empty

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

如何以编程方式居中微调器菜单?

我有一些活动,可以通过编程方式创建微调器,单击按钮即可打开微调器,但是每次单击按钮时,微调器弹出菜单都位于屏幕的一角而不是中间,因此我需要在中间显示此微调器弹出菜单屏幕。

这是我的代码

Spinner s1 = new Spinner(this);
String[] test = { "Never", "3", "6" };
        ArrayAdapter<String> arrayAdapter1 = new ArrayAdapter<String>(this, android.R.layout.simple_list_item_single_choice, test);
        s1.setAdapter(arrayAdapter1);

LinearLayout.LayoutParams params = new LinearLayout.LayoutParams(LayoutParams.FILL_PARENT, LayoutParams.FILL_PARENT);
        params.gravity = Gravity.CENTER;
        s1.setLayoutParams(params);

b3.setOnClickListener(new OnClickListener() {
            public void onClick(View paramView) {
                s1.performClick();
            }
        });
Run Code Online (Sandbox Code Playgroud)

android menu center popup spinner

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