小编Seb*_*lan的帖子

iOS 12中的自定义导航标题

我正在尝试在iOS应用上实现自定义导航标题。

故事板如下所示:

在此处输入图片说明

我想要自定义导航标题的位置是最后一个视图(消息视图),并且由于我使用图像和文本,因此这意味着我需要自定义宽度和高度。如果需要,我需要这样做viewDidLoad

let rect = CGRect(x: 0, y:0, width: 150, height: 88)
titleView = UIView(frame: rect)
......
titleView?.addSubview(imageView)
......
titleView?.addSubview(label)
navigationItem.titleView = titleView
Run Code Online (Sandbox Code Playgroud)

标题的高度被限制为44pt。

但是我设法做到的是将subViews添加到导航栏中:

var navigationBar: MessagesNavigationBar? {
    guard let navigationBar = navigationController?.navigationBar as? MessagesNavigationBar else {
        return nil
    }
    return navigationBar
}
Run Code Online (Sandbox Code Playgroud)

而在 viewDidLoad

let rect = CGRect(x: 0, y:0, width: 150, height: 88)
titleView = UIView(frame: rect)
......
titleView?.addSubview(imageView)
......
titleView?.addSubview(label)
navigationBar?.addSubview(titleView!)
Run Code Online (Sandbox Code Playgroud)

但是问题是离开视图时必须删除子视图,否则添加的任何内容也将出现在表视图中。

override func viewWillDisappear(_ animated: Bool) {
    super.viewWillDisappear(animated)
    if navigationBar != nil …
Run Code Online (Sandbox Code Playgroud)

xcode uinavigationbar uinavigationcontroller ios swift

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

在foreach中创建数组,键是循环中的第一个值

我有一些过滤器:

$filters = array('rooms-4-5', 'city-london-berlin-paris');
Run Code Online (Sandbox Code Playgroud)

我想创建一个这样的数组:

array(
     'rooms' => array('4', '5'),
     'city'  => array('london', 'berlin', 'paris')
);
Run Code Online (Sandbox Code Playgroud)

我试过了:

    foreach($filters as $filter):
        $filter = explode('-', $filter);
        $data[$filter[0]] = array();
        array_shift($filter);
        foreach($filter as $value):
            //here I am stuck ...
        endforeach;
    endforeach;
Run Code Online (Sandbox Code Playgroud)

php

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

使用javascript/jquery单击DOM元素后,在地址栏中更改URL

是否有任何方法可以在单击DOM元素后更改浏览器中的URL而无需重新加载页面?

    $('#filter_form').on('change', function () {
        $.ajax(options);
        //change the browser URL
    });
Run Code Online (Sandbox Code Playgroud)

例如:

之前: http://somepage.com/filters

后: http://somepage.com/filters?type=apartment

html javascript jquery

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

Blade Laravel 中的默认变量值

如何为刀片部分中的变量设置默认值?

例如,我有 2 个变量:

  • 软删除
  • 删除

女巫我希望默认情况下是真的。

@if($softDelete)
    <span data-toggle="tooltip" title="Publish">
        <a href="#delete-{{ $id }}" class="btn btn-default btn-xs btn-flat">
            <i class="fa fa-check"></i>
        </a>
    </span>
@endif

@if($delete)
    <span data-toggle="tooltip" title="Delete">
        <a href="#delete-{{ $id }}" class="btn btn-danger btn-xs btn-delete btn-flat details" data-toggle="modal" data-target="#delete_modal">
            <i class="fa fa-trash"></i>
        </a>
    </span>
@endif
Run Code Online (Sandbox Code Playgroud)

当我从控制器发送视图以更改某些变量的值时,具体取决于我需要的情况。

return view('platform.pages.blocks.property_table_actions',
    [
        'id' => $model->id,
        'delete' => false
    ]);
Run Code Online (Sandbox Code Playgroud)

我尝试与提供商合作:

public function composeActionButtons()
{
    view()->composer('platform.pages.blocks.property_table_actions', function ($view) {
        $view
            ->with('softDelete', true)
            ->with('delete', true)
            ->with('view', true)
            ->with('edit', true);
    });
}
Run Code Online (Sandbox Code Playgroud)

但覆盖来自控制器的错误值。

laravel blade laravel-5 laravel-blade

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