小编fra*_*ool的帖子

使用Swift在iOS WKWebview中捕获Javascript事件

我正在使用Web编程语言构建应用程序,并希望在用户单击HTML按钮时启动相机.由于我希望我的相机视图是自定义的,我需要使用Swift进行设计.因此,当用户点击此HTML按钮时,我想在Swift中"捕获"此单击,以便我可以启动我的原生相机视图.

我知道可以使用WKWebview完成,但我真的不知道该怎么做.

例如,我的Javascript(jQuery)代码可能如下所示:

// User clicks to start the native camera with Swift
$(".camera_button").click(function() {
    // Function to call the camera view from JS to Swift
});
Run Code Online (Sandbox Code Playgroud)

你能帮帮我吗?

谢谢.

javascript jquery ios swift swift2

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

如何将我的Swift应用程序连接到我的Parse Server?

我正在使用Swift语言将我的Parse应用程序连接到我的Node.js Parse Server.在Parse的文档中,我可以看到这段代码:

[Parse initializeWithConfiguration:[ParseClientConfiguration configurationWithBlock:^(id<ParseMutableClientConfiguration> configuration) {
   ...

   configuration.applicationId = @"YOUR_APP_ID";
   configuration.clientKey = @"YOUR_APP_CLIENT_KEY";
   configuration.server = @"http://localhost:1337/parse";

   ...

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

因为我使用Swift语言,所以这是我的配置,直到现在:

// Initialize Parse.
Parse.setApplicationId("APP_ID", clientKey: "CLIENT_KEY")
Run Code Online (Sandbox Code Playgroud)

但是如何在Objective-C代码中指定服务器?

谢谢!

objective-c parse-platform swift parse-server

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

动态更改GridLayoutManager的列数

我实际上在我的应用程序中使用了一个带有两列的GridLayoutManager,我希望根据所使用的视图类型有一列.

这是我片段的方法"onCreateView()"中的代码:

// Recycler view for users
usersList = (RecyclerView) mView.findViewById(R.id.usersList);

// Layout manager (grid of users
layoutManager = new GridLayoutManager(mContext, 2);
usersList.setLayoutManager(layoutManager);

// ArrayList of users
users = new ArrayList<User>();

// Set the adapter for the list of users
mHomeListAdapter = new HomeListAdapter(getActivity(), users);
usersList.setAdapter(mHomeListAdapter);
Run Code Online (Sandbox Code Playgroud)

然后,在我的适配器中,我有这样的代码:

@Override
public int getItemViewType(int position) {
    if (position == 5) {
        return TYPE_PREMIUM;
    } else {
        return TYPE_ITEM;
    }
}

@Override
public RecyclerView.ViewHolder onCreateViewHolder(ViewGroup parent, int viewType) {
    if (viewType == TYPE_PREMIUM) { …
Run Code Online (Sandbox Code Playgroud)

android gridview android-adapter android-gridlayout

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

iOS中的开发和生产SSL证书有什么区别?

这可能是一个奇怪的问题,但它让我很困惑.为什么我们必须在iOS中为推送通知创建开发和生产SSL证书?开发证书和生产证书有什么区别?

我正在开发一个带推送通知的iOS应用程序(由自托管的解析服务器处理),当我将环境从开发切换到生产(带有生产证书)时,我的设备上不再收到推送通知.一旦我将此应用程序上传到应用程序商店(然后,它将在生产中),它是否会起作用?或者,我可以"测试"我的生产环境,以确保通知在我的应用程序商店发布后可以在我的应用程序中运行吗?

xcode apple-push-notifications ios

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

在Swift 3中不推荐使用locationManager?

我已经下载了最新版本的XCode来测试iOs 10 Beta中的项目.当我打开它时,XCode问我是否要将我的项目转换为Swift 3.执行此操作后,出现了一个错误:

无法覆盖已标记为"不可用"的"locationManager":在iOS 7及更早版本中弃用的API在Swift中不可用

我的代码如下:

func locationManager(_ manager: CLLocationManager, didUpdateToLocation newLocation: CLLocation, fromLocation oldLocation: CLLocation) {
    locationManager.stopUpdatingLocation()

    currentUserLocation = newLocation
}
Run Code Online (Sandbox Code Playgroud)

是否有另一个"未弃用"功能来实现相同的结果?

谢谢!

xcode core-location ios swift3 ios10

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

如何在Android Studio中编辑使用Gradle导入的库的代码?

我在Android Studio中的某个库面临一个小问题.这个是使用Gradle文件导入的,如下所示:

dependencies {
    compile 'com.github.navasmdc:MaterialDesign:1.5@aar'
}
Run Code Online (Sandbox Code Playgroud)

它的GitHub存储库存在一个已知问题,但我只能通过编辑该库文件中的一行代码来修复它...问题是我在Android Studio中找不到它的代码.

从另一篇Stackoverflow帖子中,我发现了这个:

apply plugin: 'idea'
idea{
    module {
        downloadJavadoc = true
        downloadSources = true
    }
}
Run Code Online (Sandbox Code Playgroud)

但在应用它并重新加载我的Gradle配置后,我仍然无法找到代码.

你能帮我吗?

谢谢!

android android-library android-studio build.gradle android-gradle-plugin

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

Firebase中的标记始终为null

我试图通过以下简单代码获取令牌以在我的应用程序中使用云消息传递:

String token = FirebaseInstanceId.getInstance().getToken();
Run Code Online (Sandbox Code Playgroud)

我试图在StackOverflow上找到那些遇到同样问题并且找不到任何解决方案的人...当然,我已经按照官方的Google文档关于安装(多次),我的令牌从未生成过.

知道为什么我无法获得有效的令牌吗?

谢谢!

android android-manifest firebase firebase-cloud-messaging

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

替换字符串中的所有字母减去Java中的第一个和最后一个字母

我有一个字符串,例如这个:

stackoverflow
Run Code Online (Sandbox Code Playgroud)

我想在Java(Android)中获得以下输出:

s***********w
Run Code Online (Sandbox Code Playgroud)

所以我们保留第一个和最后一个字母,但其他字母被这个符号"*"取代.我希望从输入到输出的字符串长度相同.

这是我现在的功能代码.

String transform_username(String username)
{
    // Get the length of the username
    int username_length = username.length();

    String first_letter = username.substring(0, 1);
    String last_letter = username.substring(username_length - 1);

    String new_string = "";

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

我能够得到第一个和最后一个字母,但我真的不知道如何将"*"放在单词的中间.我知道我可以循环它,但它显然不是一个好的解决方案.

java regex string android

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

从 TypeScript 以编程方式检查离子无线电

我有一个非常简单的问题,但我找不到任何答案。我有这个代码:

<ion-list radio-group [(ngModel)]="profile_activities" name="activities">
    <ion-item>
        <ion-label>Option 1</ion-label>
        <ion-radio  (ionSelect)='selectedActivity($event);' value="0"></ion-radio>
    </ion-item>

    <ion-item>
        <ion-label>Option 2</ion-label>
        <ion-radio (ionSelect)='selectedActivity($event);' value="1"></ion-radio>
    </ion-item>

    <ion-item>
        <ion-label>Option 3</ion-label>
        <ion-radio (ionSelect)='selectedActivity($event);' value="2"></ion-radio>
    </ion-item>
</ion-list>
Run Code Online (Sandbox Code Playgroud)

...我只想根据从数据库中获得的信息预先检查打字稿中的值。如何从 Typescript 检查离子无线电?

谢谢!

typescript ionic2 angular

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

找到最接近的较小值的数组

我想我想要的很简单,但我找不到正确的解决方案.

我在Javascript中有这种数组:

[0, 38, 136, 202, 261, 399]
Run Code Online (Sandbox Code Playgroud)

按下按钮,我得到0到600的生成值.我需要的是找到这个数组中最接近的较低值.

例如,如果生成的值是198,我想得到136作为结果.如果生成的值是300,我想要261 ...如果它是589,我想要399等等.

到目前为止,我已尝试使用此代码:

var theArray = [ 1, 3, 8, 10, 13 ];
var goal = 7;
var closest = null;

$.each(theArray, function(){
    if (closest == null || Math.abs(this - goal) < Math.abs(closest - goal)) {
        closest = this;
    }
});

alert(closest);
Run Code Online (Sandbox Code Playgroud)

但它只返回最接近的值...现在我需要得到给定数字的最接近的较小值...我如何改进我的算法以满足我的需要?

谢谢!

javascript arrays jquery

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

在iOS中再次显示权限对话框

我正在使用带有Camera视图控制器的Swift编写的iOs应用程序.我第一次启动此视图控制器时,显示了权限对话框,我允许访问相机和照片库.但是,我在允许库权限时注意到了一个问题,我希望能够重现它以便修复它...但是要做到这一点,我需要重新显示此权限对话框.但是,即使我删除了应用程序并重新安装它,我再也没有得到此权限对话框.

如何再次获得它以便我可以解决我的问题?

iphone xcode ios swift ios-permissions

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

在 PHP 中舍入到最大千、百等

我有一个非常简单的 PHP 问题,但我不知道该怎么做。

我想根据数据库返回的值四舍五入到最大一百或一千。

以下是我需要的一些示例:

  • DB返回值11,我要PHP输出20
  • DB返回值104,我要PHP输出200
  • DB返回值1404,我要PHP输出2000
  • DB返回值10241,我要PHP输出11000

等等等等

我想根据传递的值创建一个自动函数来做到这一点。

谢谢!

php numbers rounding

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

使用已连接帐户进行 Stripe Checkout 时出现“无效 payment_page id”错误

我正在尝试将我网站上最新版本的 Stripe Checkout 与连接的帐户和使用目的地费用的平台费用集成。

首先,我创建一个会话:

$session = \Stripe\Checkout\Session::create([
    'customer_email' => $_SESSION["EMAIL"],
    'client_reference_id' => $_SESSION["USER_ID"],
    'payment_method_types' => ['card'],
    'line_items' => [[
        'name' => $listing["title"],
        'description' => $nb_days . " night(s) / " . $nb_guests . " guest(s) in " . $listing["title"],
        'images' => [URL . "img/logo.png"],
        'amount' => $total_stripe,
        'currency' => 'usd',
        'quantity' => 1,
    ]],
    'payment_intent_data' => [
        'application_fee_amount' => $total_fee,
        'transfer_data' => [
          'destination' => $owner_stripe_id,
        ],
    ],
    'success_url' => URL . 'order-success.php',
    'cancel_url' => URL . 'book-listing.php?action=order_error',
]); …
Run Code Online (Sandbox Code Playgroud)

stripe-payments

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