小编Ahm*_*nie的帖子

如何在Android上运行的Web应用程序中从CamScanner或Office Lens获取文件?

我有一个Angular网络应用程序,我可以通过Android上的Chrome访问.我可以用:

<input type='file' accept='image/*' capture>

(或accept使用ng-file-upload 的类似属性)直接从相机应用程序将图像上传到服务器.很酷.但我希望用户能够选择,比如CamScannerOffice Lens而不是相机应用,这样他们就可以在上传之前格式化文档.

我玩过这个accept属性,但似乎无法让这些应用显示在Android的"使用完整操作"应用列表中.

想法?

html android google-chrome file-upload angularjs

17
推荐指数
2
解决办法
1254
查看次数

防止在特定屏幕尺寸的智能手机上滚动

当发生某个事件时,我只需要阻止使用JS和/或JQuery在移动设备上滚动.我有一个数字,当用户打开图形时,滚动将被禁用,一旦关闭,滚动将再次启用.目标设备是:

  • 任何从4s到最新的iPhone(包括5 + 6)

以下是我尝试过但没有解决的一些问题:

方法1:

                    document.addEventListener('touchstart', this.touchstart);
                    document.addEventListener('touchmove', this.touchmove);

                    function touchstart(e) {
                        e.preventDefault()
                    }

                    function touchmove(e) {
                        e.preventDefault()
                    }
Run Code Online (Sandbox Code Playgroud)

方法2:

// left: 37, up: 38, right: 39, down: 40,
// spacebar: 32, pageup: 33, pagedown: 34, end: 35, home: 36
var keys = {37: 1, 38: 1, 39: 1, 40: 1};

function preventDefault(e) {
  e = e || window.event;
  if (e.preventDefault)
      e.preventDefault();
  e.returnValue = false;  
}

function preventDefaultForScrollKeys(e) {
    if (keys[e.keyCode]) {
        preventDefault(e);
        return false;
    }
}

function disableScroll() …
Run Code Online (Sandbox Code Playgroud)

javascript css mobile jquery scroll

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

通过扫描文件系统查找直接和间接子类

我在编写算法时遇到问题,以帮助我扫描文件系统并查找某个类的所有子类.

细节:

我有一个应用程序扫描外部应用程序时使用nio Files.walk()检索我检查"扩展SuperClass",同时读取文件,如果单词退出,我在列表中添加类名称,如下所示:

List<String> subclasses = new ArrayList<>();
Files.walk(appPath)
     .filter(p->Files.isRegularFile(p) && p.toString()
     .endsWith(".java")).forEach(path -> {
        try {
         List<String> lines = Files.readAllLines(path);
         Pattern pattern = Pattern.compile("\\bextends SuperClass\\b");
         Matcher matcher = pattern
                           .matcher(lines.stream()
                                 .collect(Collectors.joining(" ")));
         boolean isChild = matcher.find();
         if(isChild) subclasses.add(path.getFileName().toString());
        }catch (IOException e){
                //handle IOE
        }
Run Code Online (Sandbox Code Playgroud)

上面的问题是它只获得直接的子类,SuperClass但我需要检索所有直接和间接的子类.我想到递归,因为我不知道有多少子类,SuperClass但我无法实现任何合理的实现.

笔记:

  • 扫描超过600,000个文件
  • 我不知道有多少直接/间接子类SuperClass
  • 我正在扫描的应用程序是外部的,我不能修改它的代码所以我只能通过读取文件访问它并查看extends存在的位置
  • 如果问题的非递归解决方案很好,但如果没有其他办法,我会非常乐意接受递归的解决方案,因为我更关心解决方案而不是性能.

编辑:

我使用以下正则表达式比较名称和导入,以确保即使在相同名称的情况下不同的包输出是正确的:

Pattern pattern = Pattern.compile("("+superClasss.getPackage()+")[\\s\\S]*(\\bextends "+superClass.getName()+"\\b)[\\s\\S]");
Run Code Online (Sandbox Code Playgroud)

我也尝试过:

Pattern pattern = Pattern.compile("\\bextends "+superClass.getName()+"\\b");
Run Code Online (Sandbox Code Playgroud)

但是也有一些缺少的子类,我相信下面的代码会跳过一些检查,并且不能完全发挥作用:

public static List<SuperClass> getAllSubClasses(Path …
Run Code Online (Sandbox Code Playgroud)

java algorithm recursion nio java-8

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

Gmail平板电脑,如Actionbar项目

我正在尝试使用actionbar/toolbarGmail应用中的拆分构建应用.

是否存在此行为的任何视图元素,或者我是否必须自己编写这样的工具栏?

fragment打开时,搜索图标随主人一起移动slidingDrawer.

封闭抽屉

打开抽屉

android menuitem android-actionbar android-toolbar

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

TabHost一次显示内容(onCreate)

我有一个TabHostInside a navigationDrawer,我面临这个奇怪的问题,当我从其TabHost作为导航抽屉项目存在到另一个导航抽屉项目并且回到TabHost它将不会显示其内容,第一次它完美地工作时发生但是当我改变项目并回到它时,它将不会显示内容; 换句话说,它不会加载子片段,除非我关闭应用程序并重新启动它或更改方向(重新创建片段).

它是如何看起来我第一次打开它(含内容)

在此输入图像描述

转到另一个navDrawer项并返回TabHost后

在此输入图像描述

TabHost片段:

import android.content.Context;
import android.os.Bundle;
import android.support.v4.app.Fragment;
import android.support.v4.app.FragmentActivity;
import android.support.v4.app.FragmentPagerAdapter;
import android.support.v4.view.ViewPager;
import android.view.LayoutInflater;
import android.view.View;
import android.view.ViewGroup;
import android.widget.TabHost;
import android.widget.TabWidget;

import java.util.ArrayList;

import info.fds.Emirates.R;

public  class MyFragment extends Fragment
{

    private TabHost mTabHost;
    private ViewPager mViewPager;
    private TabsAdapter mTabsAdapter;

    public MyFragment() {
    }

    @Override
    public void onCreate(Bundle instance)
    {
        super.onCreate(instance);

    }

    @Override
    public View onCreateView(LayoutInflater inflater, ViewGroup container,
                             Bundle savedInstanceState) {
        View v = …
Run Code Online (Sandbox Code Playgroud)

java android fragment android-tabhost navigation-drawer

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

Firefox在使用JavaScript动画的徽标上方添加了不需要的细线

好吧,我似乎遇到了一些Firefox的问题,我已经在我的网站上添加了一个徽标,并通过这个CSS块设置了它:

#splash div.logo > a {
  background-image: url("../../---.png");
  background-size: 280px;
  height: 85px;
  width: 280px;
}
Run Code Online (Sandbox Code Playgroud)

当我使用Chrome或除Firefox之外的任何其他浏览器打开网页时,它以正确的方式显示它,除非我放大它将显示细线,而从Firefox打开网页将在图像上方显示一条细线或者不放大.

徽标通过以下代码生动:

IndexPage: {

    Splash: {
        init: function() {
            var $splash = $('#splash'),
                $logo = $splash.find('#logo'),
                frame = 1,
                frameCount = 46
                framesPerSecond = 50;

            function animateLogo() {

                var lastTime = 0;
                var currTime = new Date().getTime();
                // var timeToCall = Math.max(0, 16 - (currTime - lastTime));
                var timeToCall = 25;

                if (typeof requestAnimationFrame == "undefined")
                    requestAnimationFrame = function (callback, element) {
                        return setTimeout(function () …
Run Code Online (Sandbox Code Playgroud)

html javascript css firefox jquery

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

add blink to customized listview Item?

i have created a listview contains multiple items, and i added a border to those items so it would look like this:

在此输入图像描述

because of this customized border the original blink of an item get blocked so it doesn't appear, and i've tried to add a blink through animation but there is too much delay and too much work on the main thread, i also used animation inside threads but it is the same with the delay thing, which force me …

android listview border android-animation

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

是否可以通过Ajax更改页面源内容变量

是否可以通过jsp主要包含的Ajax加载来更改页面源内容jsp

如果不是可以单独重新加载页面的那部分(jsp加载一些内容)并且页面源中的部分内容被更改?

细节:

我有一个名为pagevar 的变量,它从java控制器获取其内容作为映射<String key,map<String key,String value>然后它执行多个操作并添加不同params的映射,将其转换为JSON并将其发送到jsp.

最近我想做一些不同的事情,我想在'page'变量中添加一个param,contentOfThePage这个变量在文档完全加载时动态获取其内容,之后我Ajax向控制器执行请求添加新的param,但问题是新的更改永远不会进入页面源,除非我重新加载页面或我导航到另一个页面,这会导致很多麻烦,因为页面源可能包含上一页的页面内容!

有关如何避免这种情况并直接更改页面源(NOT DOM)的任何想法?

请记住,内容是动态添加的,但我需要一种方法来更改页面源,而不会影响性能,方法是在ajax请求成功后请求重新加载

javascript java ajax jquery jsp

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

try/finally没有catch return语句?

为什么以下代码的结果是3,为什么最终得到终止并退出方法,即使编译器检查首先尝试以及为什么try中的返回不会终止方法?

public int returnVal(){ 
    try{
        return 2;
    }
    finally{
        return 3;
    }
}
Run Code Online (Sandbox Code Playgroud)

java return exception try-catch

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

使用ADB替换app SQLite数据库

我正在尝试用ADBroot设备替换我的应用程序的数据库.

我按照以下步骤操作:

  1. $adb shell
  2. run-as my.app.package
  3. cd databases
  4. rm my_database.db
  5. chmod 777 .
  6. exit
  7. exit
  8. $adb push my_database.db /data/data/my.app.package/databases/my_database.db

新数据库已成功复制.

但是当我再次启动我的应用程序时,似乎删除了新数据库并再次创建.为什么?

谢谢.

database sqlite android

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