小编Sta*_*olm的帖子

RecyclerView smoothScroll位于中心位置.安卓

我正在使用水平布局管理器RecyclerView.我需要以下RecyclerView一种方式制作:当点击某个项目时 - 将smoothScrool放到该位置并将该项目放在中心RecyclerView(如果可能的话,例如20中的10项).

所以,我没有问题smoothScrollToPosition(),但如何把项目放在RecyclerView??? 的中心?

谢谢!

android android-recyclerview linearlayoutmanager

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

添加cookie以改进2请求

我需要在改装2.0中添加cookie.如果我理解正确,cookie - 与标题相同.必须添加此Cookie:

private HashMap<String, String> cookies = new HashMap();
cookies.put("sessionid", "sessionId");
cookies.put("token", "token");
Run Code Online (Sandbox Code Playgroud)

这个与Jsoup lib一起使用:

String json = Jsoup.connect(apiURL + "/link")
                    .cookies(cookies)
                    .ignoreHttpErrors(true)
                    .ignoreContentType(true)
                    .execute()
                    .body();
Run Code Online (Sandbox Code Playgroud)

这是我的代码与改造请求:

@GET("link")
Call<CbGet> getData(@Header("sessionid") String sessionId, @Header("token") String token);
Run Code Online (Sandbox Code Playgroud)

但它不起作用...我得到403错误代码,所以请求中没有cookie ...

任何的想法?

cookies android retrofit retrofit2

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

转换后onClick不起作用

我正在尝试学习简单的TransitionManager工作,但我有点卡住......

我的目标是通过图像点击在两个场景之间进行切换.但在第一次图像点击和第一次场景变换后,我无法捕捉图像点击...

这是我的片段代码:

@Override
    public View onCreateView(LayoutInflater inflater, ViewGroup container,
                             Bundle savedInstanceState) {
        View rootView = inflater.inflate(R.layout.fragment_main, container, false);
        ViewGroup sceneRoot = (ViewGroup)rootView.findViewById(R.id.relative);

        final Transition transition = new ChangeBounds();
        transition.setDuration(3000);

        final Scene scene1 = Scene.getSceneForLayout(sceneRoot, R.layout.scene1, getActivity());
        final Scene scene2 = Scene.getSceneForLayout(sceneRoot, R.layout.scene2, getActivity());

        ImageView image = (ImageView)rootView.findViewById(R.id.image);
        image.setOnClickListener(new View.OnClickListener() {
            @Override
            public void onClick(View v) {
                if (!testBoo){
                    TransitionManager.go(scene2, transition);
                    testBoo = true;
                } else {
                    testBoo = false;
                    TransitionManager.go(scene1, transition);
                }

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

片段xml:

<RelativeLayout …
Run Code Online (Sandbox Code Playgroud)

android onclick android-4.4-kitkat android-transitions

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

与Picasso的ShareActionProvider分享图片

我花了几个小时才找到这个解决方案......

所以我决定分享这个信息,也许有一个它会有用:)

一种方法(如下所示)从视图中获取位图并将其加载到文件中.

// Get access to ImageView 
ImageView ivImage = (ImageView) findViewById(R.id.ivResult);
// Fire async request to load image
Picasso.with(context).load(imageUrl).into(ivImage);
Run Code Online (Sandbox Code Playgroud)

然后假设在图像完成加载后,这就是你可以触发共享的方式:

// Can be triggered by a view event such as a button press
public void onShareItem(View v) {
    // Get access to bitmap image from view
    ImageView ivImage = (ImageView) findViewById(R.id.ivResult);
    // Get access to the URI for the bitmap
    Uri bmpUri = getLocalBitmapUri(ivImage);
    if (bmpUri != null) {
        // Construct a ShareIntent with link to …
Run Code Online (Sandbox Code Playgroud)

android share image shareactionprovider picasso

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

IndexOutOfBoundsException setSpan(0 ... 1)结束于长度0

我正在使用这个带有标签的材料editText 库:https : //github.com/rey5137/Material/wiki/Text-Field nice库:)

但...

我正在使用下一个代码来检查输入的符号是否正确:

private boolean hasCorrectSymbols(String input){
        String tre = "[A-Za-z0-9\\@\\#\\$\\%\\&\\*\\(\\)\\-\\+\\_\\;\\:\\?\\.\\,\\!]+$";
        if (input.matches(tre)){
            return true;
        }
        return false;
    }
Run Code Online (Sandbox Code Playgroud)

用于检查正确的符号,我正在使用textWatcher:

mEditPass.addTextChangedListener(new TextWatcher() {
            @Override
            public void beforeTextChanged(CharSequence s, int start, int count, int after) {}

            @Override
            public void onTextChanged(CharSequence s, int start, int before, int count) {
                if (s.length() == 1 && !loginPassHasCorrectSymbols(s.toString())){
                    mEditPass.getText().clear();
                    String mess = getString(R.string.toast_login_useLatin);
                    showToastMessage(mess);
                } else if (s.length() >1 && !loginPassHasCorrectSymbols(s.toString())) {
                    String mess = getString(R.string.toast_login_useLatin);
                    showToastMessage(mess);
                    String text = …
Run Code Online (Sandbox Code Playgroud)

android textwatcher android-edittext indexoutofboundsexception

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

onActivityResult不从viewPager片段调用

嗨我在主片段中使用viewPager和fragmnets.我试图从图库或相机获取图像到位图,但在选择照片和startActivityForResult后它没有捕获onActivityResult ...

这是我如何调用startActivityForResult:

private void setAvatarDialog(){
        final CharSequence[] options = {"Choose from Gallery", "Take Photo" };

        String title = getString(R.string.alertDialog_editProfile_updateAvatar_title);
        String negative = getString(R.string.alertDialog_editProfile_updateAvatar_negative);

        AlertDialog.Builder builder = new AlertDialog.Builder(getActivity());
        builder.setTitle(title);
        builder.setItems(options, new DialogInterface.OnClickListener() {
            @Override
            public void onClick(DialogInterface dialog, int which) {
                if (options[which].equals(options[0])) {
                    mIntent = new Intent(Intent.ACTION_PICK, MediaStore.Images.Media.EXTERNAL_CONTENT_URI);
                    mIntent.setType("image/*");
                    startActivityForResult(Intent.createChooser(mIntent, "Select File"), SELECT_FILE);
                } else if (options[which].equals(options[1])) {
                    mIntent = new Intent(MediaStore.ACTION_IMAGE_CAPTURE);
                    startActivityForResult(mIntent, REQUEST_CAMERA);
                }
                dialog.dismiss();
            }
        });
        builder.setNegativeButton(negative, new DialogInterface.OnClickListener() {
            @Override
            public void onClick(DialogInterface dialog, int …
Run Code Online (Sandbox Code Playgroud)

android android-gallery android-camera-intent onactivityresult

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

带有所有特殊符号的正则表达式

我需要只允许使用拉丁字符,数字和所有其他符号的正则表达式(但不能使用空格)

谢谢!

更新:

private boolean loginPassHasCorrectSymbols(String input){
        if (input.matches("[A-Za-z0-9\!\"\#\$\%\&\'\(\)\*\+\,\-\.\/\:\;\<\>\=\?\@\[\]\{\}\\\^\_\`\~]+$")){
            return true;
        }
        return false;
    }
Run Code Online (Sandbox Code Playgroud)

regex android

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

找不到com.google.firebase:firebase-database:9.2.0

我正在尝试将新的firebase数据库安装到我的应用程序中,但是由于下一个错误而失败:

错误:找不到com.google.firebase:firebase-database:9.2.0.要求:appName:app:unspecified

比我克隆官方谷歌示例frome 在这里,并试图建立数据库示例,但我仍然得到相同的错误...

看起来这是因为一些谷歌错误.我对吗?在其他情况下,为什么会发生以及如何解决这个问题?

android firebase firebase-realtime-database

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

无法使用过滤器从 firebase 获取数据

我是 firebase 的新手,所以不要太严格......我有下一个数据库:

{"list":[
          {
             "id":0,
             "name":"name",
             "text":"text"
          },
          {
             "id":1,
             "name":"name",
             "text":"text"
          },
          {
             "id":2,
             "name":"name",
             "text":"text"
          },
          {
             "id":3,
             "name":"name",
             "text":"text"
          }
    ]
}
Run Code Online (Sandbox Code Playgroud)

在此输入图像描述

这是我的请求代码:

FirebaseDatabase database = FirebaseDatabase.getInstance();
Query mQuery = database.getReference("list")
                .child("id").startAt("2");
mQuery.addListenerForSingleValueEvent(eventListener);
Run Code Online (Sandbox Code Playgroud)

但是这个请求返回null...

有什么想法会很高兴吗?

更新

我需要获取 id 大于要求的所有项目。

android firebase firebase-realtime-database

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

如何修复MediaPlayer.reset中的IllegalStateException

我有使用audioTales的服务中的mediaPlayer.我第一次按startService - 它很棒.但是,如果我将停止服务而不是启动egain - 在我的情况下在MediaPlayer.reset中有IllegalStateException我在.release()之前调用.reset()所以这不是崩溃的原因...

我是android开发的新手,所以请不要非常严格...)

这是catlog:

03-07 21:54:40.521  18845-18845/ua.andriyantonov.tales E/AndroidRuntime? FATAL EXCEPTION: main
    java.lang.RuntimeException: Unable to create service ua.andriyantonov.tales.TalePlay_Service: java.lang.IllegalStateException
            at android.app.ActivityThread.handleCreateService(ActivityThread.java:2377)
            at android.app.ActivityThread.access$1600(ActivityThread.java:134)
            at android.app.ActivityThread$H.handleMessage(ActivityThread.java:1281)
            at android.os.Handler.dispatchMessage(Handler.java:99)
            at android.os.Looper.loop(Looper.java:137)
            at android.app.ActivityThread.main(ActivityThread.java:4744)
            at java.lang.reflect.Method.invokeNative(Native Method)
            at java.lang.reflect.Method.invoke(Method.java:511)
            at com.android.internal.os.ZygoteInit$MethodAndArgsCaller.run(ZygoteInit.java:786)
            at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:553)
            at dalvik.system.NativeStart.main(Native Method)
     Caused by: java.lang.IllegalStateException
            at android.media.MediaPlayer._reset(Native Method)
            at android.media.MediaPlayer.reset(MediaPlayer.java:1331)
            at ua.andriyantonov.tales.TalePlay_Service.onCreate(TalePlay_Service.java:69)
            at android.app.ActivityThread.handleCreateService(ActivityThread.java:2367)
            at android.app.ActivityThread.access$1600(ActivityThread.java:134)
            at android.app.ActivityThread$H.handleMessage(ActivityThread.java:1281)
            at android.os.Handler.dispatchMessage(Handler.java:99)
            at android.os.Looper.loop(Looper.java:137)
            at android.app.ActivityThread.main(ActivityThread.java:4744)
            at java.lang.reflect.Method.invokeNative(Native Method)
            at java.lang.reflect.Method.invoke(Method.java:511)
            at com.android.internal.os.ZygoteInit$MethodAndArgsCaller.run(ZygoteInit.java:786)
            at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:553)
            at dalvik.system.NativeStart.main(Native Method)
Run Code Online (Sandbox Code Playgroud)

这是Service.class: …

service android reset media-player

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