小编joe*_*oey的帖子

在UIBezierPath下绘制渐变

我画了一条曲线.我想从视图一直到线条放置一个渐变(以便渐变曲线与线条一起).

编辑:这是下面代码产生的照片:

在此输入图像描述

我知道如何画线,我知道如何添加常规渐变,但不是两个在一起.这是我的代码:

override func drawRect(rect: CGRect) {

    // draw the curved line, this code works just fine.
    let path1 = UIBezierPath()
    path1.lineWidth = 1.1
    UIColor.greenColor().setStroke()
    path1.moveToPoint(CGPoint(x: 0, y: bounds.height/2))
    path1.addQuadCurveToPoint(CGPoint(x: bounds.width, y: bounds.height/2), controlPoint: CGPoint(x: bounds.width/2, y: (bounds.height * 0.75)))
    path1.stroke()

    // my attempt to draw the gradient:

    let gradient = CAGradientLayer()
    gradient.startPoint = CGPoint(x: 1, y: 1)
    gradient.endPoint = CGPoint(x: 0, y: 0)
    let colors = [UIColor.whiteColor().CGColor, UIColor(red: 0, green: 1, blue: 1, alpha: 0.4).CGColor]
    gradient.colors = colors …
Run Code Online (Sandbox Code Playgroud)

core-graphics ios uibezierpath swift

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

使用AVPlayer从远程URL播放视频

我正在尝试使用AVPlayer从远程URL播放视频.这是一个非常简单的设置:加载视图控制器,并在viewDidLoad中,使用url设置AVPlayer并播放它.这是我的代码,在viewDidLoad中:

NSString *urlString = @"http://download.wavetlan.com/SVV/Media/HTTP/MOV/ConvertedFiles/MediaConvert/MediaConvert_test4_1m10s_MPEG4SP_VBR_383kbps_320x240_30fps_AACLC_VBR_60kbps_Stereo_44100Hz.mov";
NSURL *url = [NSURL fileURLWithPath:urlString];
self.item = [AVPlayerItem playerItemWithURL:url];
self.player = [[AVPlayer alloc] initWithPlayerItem:self.item];
AVPlayerLayer *playerLayer = [AVPlayerLayer playerLayerWithPlayer:self.player];
[[NSNotificationCenter defaultCenter] addObserver:self selector:@selector(videoFinished:) name:AVPlayerItemDidPlayToEndTimeNotification object:self.item];
playerLayer.frame = CGRectMake(0, 0, self.view.frame.size.width, self.view.frame.size.height);
playerLayer.backgroundColor = [UIColor greenColor].CGColor;
[self.view.layer addSublayer:playerLayer];
playerLayer.videoGravity = AVLayerVideoGravityResizeAspectFill;
[self.player play];
self.player.actionAtItemEnd = AVPlayerActionAtItemEndNone;
Run Code Online (Sandbox Code Playgroud)

但是当视图加载时,没有任何反应.屏幕只是绿色(因为我将playerLayer设置为绿色),所以我知道它就在那里.它只是不玩.您也可以测试该urlString,它是一个有效的URL.文件大小为3.8 MB.我从这里得到了一些测试网址的网址:http://download.wavetlan.com/SVV/Media/HTTP/http-mov.htm

所以,我已经初始化了播放器,播放器层,项目,并且URL是正确的.但屏幕上没有任何内容.我在调试器中注意到的一件事是NSURL和url的实际字符串在结尾处是不同的.也许这可能会有所帮助,但我不知道如何改变它.这是一张照片:

在此输入图像描述

另外,我在iOS 8.4设备上测试它,所以我知道阻止HTTP地址的app传输安全性不是.

我在这里可能做错了什么?任何帮助表示赞赏.谢谢.

iphone avfoundation ios avplayer

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

如何从React的promise中获取响应数据?

我正在设置一个非常基本的反应应用程序,并尝试调用我的本地主机服务器(单独的后端服务器),其上有JSON数据.我想提取从promise返回的数据,但我做的任何事情似乎都没有用.这是我的代码:

    fetch('http://localhost:8080/posts')
    .then(function(response) {
        const items = response.json()
        console.log(items)
    })
Run Code Online (Sandbox Code Playgroud)

我尝试过response.json(),response.body,我尝试用.then(functio(body){console.log(body)}),response.data,response.body记录身体,但没有任何效果.以下是控制台打印出来的内容:

在此输入图像描述

我如何获取它给我的输出,并将其放入我可以迭代的数组中?"内容"和"id"是我需要访问的内容.

和FYI,阵列,当我去localhost:8080 /我的浏览器的帖子很简单:

  [{"id":1,"content":"hello, this is post 1"}]
Run Code Online (Sandbox Code Playgroud)

任何帮助表示赞赏,谢谢!

javascript json reactjs

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

如何在反应中从外部/组件导入文件

我的文件夹结构如下:

在此输入图像描述

在我的 App.Js(位于组件文件夹下)中,我有:

import variables from '/src/EnvVariables/variables.json';
Run Code Online (Sandbox Code Playgroud)

但是,我收到错误:

You attempted to import /src/EnvVariables/variables.json which falls
outside of the project src/ directory. Relative imports outside of
src/ are not supported. You can either move it inside src/, or
add a symlink to it from project's node_modules/.
Run Code Online (Sandbox Code Playgroud)

我也尝试过:

import variables from './src/EnvVariables/variables.json';
import variables from '/src/EnvVariables/variables.json';
import variables from '/src/EnvVariables/variables.json';
import variables from '/EnvVariables/variables.json';
import variables from './EnvVariables/variables.json';
Run Code Online (Sandbox Code Playgroud)

所有这些要么给出上述错误,要么说“无法解析文件”。

正如他们所说,该文件位于 /src 下的文件夹中。但它仍然告诉我它必须在 /src/ 目录下。如何导入我的variables.json 文件?我不想只是将它放在“组件”下,我更喜欢更好地组织它。

reactjs

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

以编程方式设置选项卡栏项目

我有一个选项卡栏,我想根据用户的设置更改其项目。因此,我需要能够以编程方式从选项卡栏中添加/删除项目。这是我的代码:

class TabBarViewController: UITabBarController {
var controllerArray = [UIViewController]()

override func viewDidLoad() {
    super.viewDidLoad()

    // Do any additional setup after loading the view.

    self.tabBar.tintColor = UIColor.greenColor()

    let storyBoard = UIStoryboard(name: "Main", bundle: NSBundle.mainBundle())
    let controller1 = storyBoard.instantiateViewControllerWithIdentifier("Navigation2") as! nav2
    let controller2 = storyBoard.instantiateViewControllerWithIdentifier("Explore") as! ExploreNavigation
    let controller3 = storyBoard.instantiateViewControllerWithIdentifier("friends") as! ExploreNav
    let controller4 = storyBoard.instantiateViewControllerWithIdentifier("controller3ID") as! controller3VC
    controllerArray.append(controller1)
    controllerArray.append(controller2)
    controllerArray.append(controller3)
    controllerArray.append(controller4)
   self.tabBarController?.setViewControllers(controllerArray, animated: true)

  }


}
Run Code Online (Sandbox Code Playgroud)

但如果我注释掉其中一行,例如这样:

     //controllerArray.append(controller2)
Run Code Online (Sandbox Code Playgroud)

因此该控制器不属于controllersArray,该控制器仍显示在选项卡栏中。我究竟做错了什么?

我也尝试过这个,但它也不起作用:

 self.tabBarController?.viewControllers = controllerArray
Run Code Online (Sandbox Code Playgroud)

uitabbarcontroller ios swift

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

内容偏移不起作用

我试图在我的uiscrollview中设置内容偏移量.我尝试了以下,但没有一个有效.以下任何一个都不会以任何方式影响我的scrollView,它在屏幕上显示为正常:

 let point = CGPoint(x: 0, y: self.view.frame.height / 2)
 self.scrollView.setContentOffset(point, animated: true)
Run Code Online (Sandbox Code Playgroud)

和:

 self.scrollView.contentOffset.y = self.view.frame.size.height / 2
Run Code Online (Sandbox Code Playgroud)

和:

 self.scrollView.contentOffset = CGPointMake(0, self.view.frame.size.height / 2)
Run Code Online (Sandbox Code Playgroud)

和:

 self.scrollView.contentOffset = CGPointMake(0, scrollView.frame.size.height / 2)
Run Code Online (Sandbox Code Playgroud)

我的滚动视图是我视图高度的2倍.它们基本上分为两个不同的视图,我可以在它们之间进行分页.我希望scrollview从底部开始.

uiscrollview ios swift

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

使用 Parse Server 的 FCM 推送通知

这很复杂,但我会尽量简洁。我正在使用 FCM 向 Android 设备发送推送通知。我的后端是解析服务器。我可以成功地将推送从 FCM 控制台发送到设备。当我从 parse 发送推送到https://mybackend/parse/push 时,它会显示 {"result": "true" } 作为响应。我检查了服务器日志,它(可以预见)显示所有对 /parse/push 的 http post 请求均成功 200。

但是,当从解析发送时(使用curl或解析推送控制台),推送不会显示在FCM控制台中。那么解析服务器和 FCM 之间存在一些问题。

在我的 index.js 中,我有:

push: {
  android: {
    senderId: "XXXXX",
    apiKey: "YYYYYY"
   }
}
Run Code Online (Sandbox Code Playgroud)

我有钥匙,并按照此处完成了所有操作:http://parseplatform.org/docs/parse-server/guide/#push-notifications

我还缺少什么?为什么我无法让它实际出现在设备上?非常感谢任何帮助,谢谢。

android push-notification parse-server

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

在React Native中样式化自定义组件

我试图在react native中将样式添加到自定义组件中,但是无论我做什么,样式都无效。这是我的代码:

// App.js
import MyCustomComponent from './components/myCustomComponent.js';

render() {
  return (
    <View style={styles.container}>
      <MyCustomComponent style={{marginTop: 10}}/>
    </View>
  );
}
Run Code Online (Sandbox Code Playgroud)

该项目可以正常编译,并且我的自定义组件可以在屏幕上正常显示,但是没有应用marginTop样式。值得注意的是,父View组件的样式确实适用。这是我今天刚刚创建的一个全新项目。这似乎应该是非常基础的,但是却无法正常工作。我该怎么做才能应用这种样式?

自定义组件代码:

import React, {Component} from 'react';
import {TextInput, StyleSheet, Image, View, Button} from 'react-native';

type Props = {};
export default class MyCustomComponent extends Component<Props> {

  render() {
    return (
      <View style={styles.container}>
        <Image
          source={{ uri: "source here" }}
          style={{ width: 50, height: 50 }}
         />
         <TextInput
          style={{ height: 50 }}
          placeholder="Search"
        />
      </View>
    )
  }
}
Run Code Online (Sandbox Code Playgroud)

react-native

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