小编Bog*_*iel的帖子

不使用RecyclerView.Adapter内的onActivityResult

我在适配器内有一个按钮进入图库:

    MyAdapter extends
            RecyclerView.Adapter<RecyclerView.ViewHolder> {
    ...
    onClic..{
        Intent intent = new Intent(
                                    Intent.ACTION_PICK,
                                    android.provider.MediaStore.Images.Media.EXTERNAL_CONTENT_URI);
                            intent.setType("image/*");
                            ((Activity) context).startActivityForResult(
                                    Intent.createChooser(intent, "Select File"),
                                    SELECT_FILE);}
    ....
 @Override
    protected void onActivityResult(int requestCode, int resultCode, Intent data) {
        super.onActivityResult(requestCode, resultCode, data);
        if (resultCode == RESULT_OK) {
        }
    }
..
    }
Run Code Online (Sandbox Code Playgroud)

我想要做的是使用从库中选择的图像更新ImageView,但为了做到这一点,我必须使用onActivityResult并且编译器正在抱怨method onActivityResult is never usedcannot resolve method onActivityResult.

我怎么能这样做?

android android-studio

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

导入错误:没有名为 pytesseract 的模块

我正在关注本指南https://realpython.com/blog/python/setting-up-a-simple-ocr-server/并到达了我运行 cli.py 的部分,python flask_server/cli.py但我得到了

python cli.py
Traceback (most recent call last):
  File "cli.py", line 3, in <module>
    import pytesseract
ImportError: No module named pytesseract
Run Code Online (Sandbox Code Playgroud)

我该如何解决这个问题?

我还看到我有多个版本的python。我安装了带有最新更新的 linux-kali。

别的东西:他运行这样的命令python flask_server/cli.py——flask_server 在哪里?我只是简单地运行它python cli.py(我在创建文件的某个目录中)。

python linux

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

尝试在空对象引用上调用虚拟方法'boolean android.os.Handler.postDelayed(java.lang.Runnable,long)'

我一直在关注此页面,将内容添加到Endless Scroll RecyclerView中,底部带有ProgressBar,我认为我做对了所有事情,但是由于某种原因,我回到了这一行onLoadMoreListener.onLoadMore();

 java.lang.NullPointerException: Attempt to invoke virtual method 'boolean android.os.Handler.postDelayed(java.lang.Runnable, long)' on a null object reference
Run Code Online (Sandbox Code Playgroud)

我知道有很多有关空指针错误的文章,但是该行在if语句中,如果为空则不应执行。

if (onLoadMoreListener != null) {
                        onLoadMoreListener.onLoadMore();
                    }
Run Code Online (Sandbox Code Playgroud)

为什么会这样呢?我应该发布什么代码来帮助解决问题?

mAdapter.setOnLoadMoreListener(new MyAdapter.OnLoadMoreListener() {
            @Override
            public void onLoadMore() {
                //add progress item
                myDataset.add(null);
                mAdapter.notifyItemInserted(myDataset.size() - 1);

                handler.postDelayed(new Runnable() {
                    @Override
                    public void run() {
                        //remove progress item
                        myDataset.remove(myDataset.size() - 1);
                        mAdapter.notifyItemRemoved(myDataset.size());
                        MyRecyclerItems gridItem= new MyRecyclerItems();
                        gridItem.setAbout("Test");
                        gridItem.setEmail("tesssst@gmail.com");
                        myDataset.add(0,gridItem);
                        mAdapter.notifyItemInserted(myDataset.size());
                        mAdapter.setLoaded();
                    }
                }, 2000);
                System.out.println("load");
            }
        });
Run Code Online (Sandbox Code Playgroud)

android android-studio android-recyclerview

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

未定义的局部变量或方法 `current_user' cancancan

我正在开发登录/注销系统。我没有使用设计,而是创建了一个活动记录用户模型并使用会话来记住用户是否登录。一切正常,直到我application_controller.rb在登录前和登录后添加这些行以具有布局。

layout :set_layout
  def set_layout
    if session[:current_user_id]
      'afterlogin'
    else
      'application'
    end
  end 
Run Code Online (Sandbox Code Playgroud)

现在,在我登录并cancancan在 html 页面的某处使用后,我得到undefined local variable or method 'current_user'. 我认为我必须添加一个current_user方法,但我不知道在哪里以及如何定义它。

编辑:我在登录使用的另一个类中已经有了类似的东西:

class Admin::ApplicationController < ApplicationController
    before_action :authorize

  def authorize
  begin
    @current_user ||= User.find(session[:current_user_id]) if session[:current_user_id]
  rescue ActiveRecord::RecordNotFound
    session.destroy
    redirect_to '/login',alert: 'Please login'
  end
end

end
Run Code Online (Sandbox Code Playgroud)

添加该方法后,我应该修改它吗?

ruby-on-rails

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

什么时候使用passport.js?

过去几个月我一直在 node 中进行开发以尝试理解该框架,现在我实际上将尝试为多个设备制作一个应用程序。

我想使用一个节点项目作为 api,它将处理所有 post 和 get 请求。

在另一个节点项目中,我将有一个 React Web 界面,通过 ajax 和 socket.io 与节点 api 进行通信。

在移动 android/ios 或 cordova 中,我会让移动界面按上述方式进行通信。

现在我已经解释了我的问题的背景,我将描述我的问题。

现在我有一个节点项目,它使用 bcrypt 来加密注册和登录密码。我还使用通行证来建立会话和快速消息。

router.post('/login',
    passport.authenticate('local', {successRedirect:'/', failureRedirect:'/users/login',failureFlash: true}),
    function(req, res) {
        res.redirect('/');
    });

passport.use(new LocalStrategy(
    function(username, password, done) {
        db_functions.getUserByEmail(username,function(error, results)  {
            if (error) throw error;

            bcrypt.compare(password, results[0].password, function(err, res) {
                if(res === true){
                    return done(null,results[0])
                } else {
                    return done(null, false, {message: 'Invalid password'})
                }
            });
        })
    }));

passport.serializeUser(function(user, done) {
    done(null, user.id);
}); …
Run Code Online (Sandbox Code Playgroud)

node.js passport.js

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

Android Studio java.net.MalformedURLException:找不到协议:

我正在开发 udacity 教程中的阳光应用程序。我在第 2 课的某个地方。当我尝试运行应用程序的某个功能时,出现以下错误:

04-29 12:21:13.311  22025-22424/name.company.sunshine.app E/FetchWeatherTask? Error
    java.net.MalformedURLException: Protocol not found: "http://api.openweathermap.org/data/2.5/forecast/daily?q=94043&mode=json&units=metric&cnt=7
            at java.net.URL.<init>(URL.java:176)
            at java.net.URL.<init>(URL.java:125)
            at name.company.sunshine.app.ForecastFragment$FetchWeatherTask.doInBackground(ForecastFragment.java:144)
            at name.company.sunshine.app.ForecastFragment$FetchWeatherTask.doInBackground(ForecastFragment.java:101)
            at android.os.AsyncTask$2.call(AsyncTask.java:288)
            at java.util.concurrent.FutureTask.run(FutureTask.java:237)
            at android.os.AsyncTask$SerialExecutor$1.run(AsyncTask.java:231)
            at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1112)
            at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:587)
            at java.lang.Thread.run(Thread.java:841)
04-29 12:21:13.321  22025-22025/name.company.sunshine.app D/AbsListView? unregisterIRListener() is called
04-29 12:21:13.321  22025-22025/name.company.sunshine.app E/ViewRootImpl? sendUserActionEvent() mView == null 
Run Code Online (Sandbox Code Playgroud)

第 144 行是

 URL url = new URL(builtUri.toString());
Run Code Online (Sandbox Code Playgroud)

如果您需要,我将提供整个课程。

还有其他东西,我在清单中有这个

<uses-permission android:name="android.permission.INTERNET" /> 
Run Code Online (Sandbox Code Playgroud)

但是当我安装该应用程序时,它从不征求许可。

这是文件:

package name.company.sunshine.app;

import android.net.Uri;
import android.os.AsyncTask;
import android.os.Bundle;
import android.support.v4.app.Fragment;
import android.text.format.Time;
import android.util.Log;
import …
Run Code Online (Sandbox Code Playgroud)

java android android-studio

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

如何在Android Studio中的onCreate之外的其他方法中获取应用程序的上下文?

我有一个异步任务,最终创建参数电子邮件,关于.异步任务位于onCreate方法中,此CustomListAdapter也是如此.我想在asyncTask中的onCreate中移动CustomListAdapter.onPostExecute我的问题是这this意味着应用程序的上下文.当我移动它时,onPostExecute它不再具有上下文.我试图用它替换它getApplicationContext(),activityName.this.getApplicationContext但它不起作用,因为它期望应用程序的上下文.我发现这种静态方式可以在Android上获得"上下文"?但由于某种原因,我无法在清单中定义名称.我可以在asyncTask的onPostExecute方法中使用哪种获取应用程序上下文的方法?或者我应该以上下文作为参数来制作Asynck任务?

CustomListAdapter adapter=new CustomListAdapter(this, email,about);
                list=(ListView)findViewById(R.id.list);


 list.setAdapter(adapter);

            list.setOnItemClickListener(new AdapterView.OnItemClickListener() {

                @Override
                public void onItemClick(AdapterView<?> parent, View view,
                                        int position, long id) {
                    // TODO Auto-generated method stub
                    String Slecteditem= email.get(position);
                    Toast.makeText(getApplicationContext(), Slecteditem, Toast.LENGTH_SHORT).show();

                }
            });
Run Code Online (Sandbox Code Playgroud)

android android-asynctask android-studio

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

将上下文从活动内的片段传递到另一个类

我有一个由Activity实例化的片段.我遇到的问题是我在片段中有另一个类,它将一个参数作为一个Activity上下文.

public class LocationQueries {
    Activity context;

    private static int REQUEST_CODE_RECOVER_PLAY_SERVICES = 200;

    public LocationQueries(Activity context) {
        this.context = context;
    }

    public boolean checkGooglePlayServices() {

        int checkGooglePlayServices = GooglePlayServicesUtil
                .isGooglePlayServicesAvailable(context);
        if (checkGooglePlayServices != ConnectionResult.SUCCESS) {
              /*
               * google play services is missing or update is required
               *  return code could be
               * SUCCESS,
               * SERVICE_MISSING, SERVICE_VERSION_UPDATE_REQUIRED,
               * SERVICE_DISABLED, SERVICE_INVALID.
               */
            GooglePlayServicesUtil.getErrorDialog(checkGooglePlayServices,
                    context, REQUEST_CODE_RECOVER_PLAY_SERVICES).show();

            return false;
        }

        return true;

    }
}
Run Code Online (Sandbox Code Playgroud)

我像这样在我的片段中实例化该类

private LocationQueries locationQueries = new LocationQueries(getActivity());
Run Code Online (Sandbox Code Playgroud)

但是当我尝试使用时 locationQueries.checkGooglePlayServices();

我得到 …

java android android-fragments android-studio

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

如何让 SimpleDraweeView 正确显示图像?

我有一个SimpleDraweeView位于回收站内的。

回收商:

<android.support.v7.widget.RecyclerView
    android:id="@+id/recycler_view"
    android:layout_width="match_parent"
    android:layout_height="match_parent" />
Run Code Online (Sandbox Code Playgroud)

简单绘图视图:

<com.facebook.drawee.view.SimpleDraweeView
            android:id="@+id/feedImage"
            android:layout_width="match_parent"
            android:layout_height="wrap_content"
            android:adjustViewBounds="true"
            />
Run Code Online (Sandbox Code Playgroud)

我尝试了很多ratio和scaleType,但我似乎无法得到能够显示完整高度的那个(仅显示90%)。宽度很好,但我似乎无法正确获得高度。哪种组合才是获得正确相位的正确组合?(如脸书)

android android-studio fresco

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

DialogFragment顶部的白色矩形

当使用dialogFragment时,我在片段顶部得到一个白色空格矩形而不知道原因.

我应该得到什么 在此输入图像描述

我真正得到的 在此输入图像描述

我的DialogFragment:

 public class SelectDialogFragment extends DialogFragment {

            @Override
            public View onCreateView(LayoutInflater inflater, ViewGroup container, Bundle savedInstanceState) {
            //inflate layout with recycler view
            View v = inflater.inflate(R.layout.select_frag, container, false);
            return v;
        }

}
Run Code Online (Sandbox Code Playgroud)

select_frag.xml

<RelativeLayout
    xmlns:android="http://schemas.android.com/apk/res/android"
    android:layout_width="wrap_content"
    android:orientation="vertical"
    android:background="#000"
    android:layout_height="wrap_content">

    <TextView
        android:layout_width="match_parent"
        android:layout_height="match_parent"
        android:text="New Text"
        android:id="@+id/textView" />
</RelativeLayout>
Run Code Online (Sandbox Code Playgroud)

android android-studio

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

没有将Symbol隐式转换为String rails

在模型日历中删除/创建记录时出现问题,但仅限于我使用时flash[:alert] = "Notification deleted".它只发生在这个模型中.基本上如果我使用

def destroy
      if @calendar.destroy
        redirect_to calendars_path
      else
        redirect_to :back, :flash => { :error => "Failed to delete!" }
      end
    end
Run Code Online (Sandbox Code Playgroud)

一切都很好,但如果我flash[:alert] = "Notification deleted"redirect_to这之后添加:

def destroy
      if @calendar.destroy
        redirect_to calendars_path, flash[:alert] = "Notification deleted"
      else
        redirect_to :back, :flash => { :error => "Failed to delete!" }
      end
    end
Run Code Online (Sandbox Code Playgroud)

我得到 TypeError in CalendarsController#destroy.我在许多控制器中使用flash [:alert]并且它正在工作,但是这个有错误.

我不知道如何进一步跟踪错误.

ruby-on-rails

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