小编Var*_*run的帖子

以这种方式使用AsyncTask:"new AsyncTask(){"给了我错误

我在GCM上使用了一个名为"doInBackground"的函数的android教程,他们将这个函数定义如下:

private void registerInBackground() {
    new AsyncTask() {
        @Override
        protected String doInBackground(Void... params) {
            //do stuff
        }
        @Override
        protected void onPostExecute(String msg) {
            //do stuff
        }
    }.execute(null, null, null);
}
Run Code Online (Sandbox Code Playgroud)

但是当我将自己的代码粘贴并粘贴到eclipse中时,它会抱怨并说我没有实现doInBackground.这是因为期望doInBackground具有"Object"的输入参数,并且它不识别由于其输入参数是void而定义的那个.现在,如果我将async任务声明为一个类,我会把它放在<Void, Void, String>它前面,这会告诉编译器我希望我的doInBackground将VOid作为输入.但是当我把<Void, Void, String>"新的AsyncTask()" 放在前面时:

    private void registerInBackground() {
    new AsyncTask() <Void, Void, String>{
Run Code Online (Sandbox Code Playgroud)

我收到编译器错误:

Syntax error on tokens, delete these tokens
Run Code Online (Sandbox Code Playgroud)

android android-asynctask

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

什么原语用于实现synchronized关键字?

当我们synchronized在java中使用关键字时,究竟使用了哪个同步原语?Lock, Semaphore, Monitor, Mutex

编辑: JVM如何在本机级别实现锁定?

java multithreading synchronized

8
推荐指数
2
解决办法
1414
查看次数

如何在android中以编程方式记录我的应用程序屏幕的视频

我正在开发Android应用程序.在我的应用程序中,我必须以编程方式捕获几秒钟的屏幕动画作为视频.可能吗?当我用Google搜索时,所有代码都是用于在视频模式下启动摄像头或将系统屏幕捕获为视频.

当我在模拟器或设备中运行时,我需要单独记录我的应用程序屏幕,我必须以SDCard中的视频格式存储,然后根据需要播放视频.

任何人都可以说以编程方式有可能吗?如果是这样,请说明如何做到这一点.如果没有,请提出一些建议来完成这项任务.

android android-video-player

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

寻求改变文字大小

我想使用搜索栏更改编辑文本的文本大小,每次关闭活动并重新打开它时,搜索栏会自动增加文本大小,这是代码

package com.e_orthodoxy.orthodox_prayers;

public class WakeupActivity extends Activity {

    private SharedPreferences prefs;
    private SeekBar seekbar;
    private EditText edittext;

    @Override
    protected void onCreate(Bundle savedInstanceState) {
        super.onCreate(savedInstanceState);
        setContentView(R.layout.activity_wakeup);

        seekbar = (SeekBar) findViewById(R.id.seekBar1);
        edittext = (EditText) findViewById(R.id.id_wakeup_txt);

        prefs = getPreferences(MODE_PRIVATE);

        float fs = prefs.getFloat("fontsize", 12);
        seekbar.setProgress((int)fs);
        edittext.setTextSize(seekbar.getProgress());


        seekbar.setOnSeekBarChangeListener(new OnSeekBarChangeListener() {

            @Override
            public void onStopTrackingTouch(SeekBar seekBar){
                prefs = getPreferences(MODE_PRIVATE);
                SharedPreferences.Editor ed = prefs.edit();
                ed.putFloat("fontsize", edittext.getTextSize());
                ed.commit();    
            }
            @Override
            public void onStartTrackingTouch(SeekBar seekBar){

            }
            @Override
            public void onProgressChanged(SeekBar seekBar, int progress,
                    boolean fromUser){
                edittext.setTextSize(progress);
            } …
Run Code Online (Sandbox Code Playgroud)

user-interface android seekbar

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

git通过终端合并

我试图通过终端进行git合并.我正在分支机构工作fix_stuff,我需要合并回来develop.所以我做如下

git checkout develop
git merge --no-ff fix_stuff
Run Code Online (Sandbox Code Playgroud)

现在我看来是一个文本编辑器 - 仍然在终端内 - 有以下消息

# Please enter a commit message to explain why this merge is necessary,
# especially if it merges an updated upstream into a topic branch.
#
# Lines starting with '#' will be ignored, and an empty message aborts
# the commit.
Run Code Online (Sandbox Code Playgroud)

果然我按i,然后输入我的信息.现在我已经完成了这条消息,我不知道该怎么办.我esc x当时试过了esc q.没有.

我通过Mac El Capitan使用Android Studio终端

git terminal git-merge

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