问题描述
我正在使用Swift Package Manager构建一个库。我添加了一个XIB文件来定义自定义<?PHP
class searchMovies{
function __construct(){
add_action( 'pre_get_posts',array( $this,'filterquery' ) );
}
function filterquery( $query ){
global $pageNow;
global $typeNow;
// THIS DOES NOT SEEM TO WORK HERE ↓↓↓
if ( is_archive()
&& $query->is_main_query()
&& isset( $_GET['search_text'] )
&& !empty( $_GET['search_text'] )
) {
$query->set(
'Meta_query',array(
'relation' => 'OR',array(
'key' => 'post_title','value' => $_GET['search_text'],'compare' => 'LIKE'
),array(
'key' => 'movie_description','compare' => 'LIKE'
)
)
);
}
return $main_query;
}
}
new searchMovies();
的布局。我的软件包无法在Xcode中编译,因为XIB文件特定于iOS。如果创建macOS XIB,则会出现相反的错误。这似乎是因为:
- 由Swift Package Manager构建的库将始终是跨平台的,因此我无法构建“仅iOS”包。
- 代码可以使用
UICollectionViewCell
之类的机制来处理特定于平台的代码。 -
#if os(iOS)
没有resources: [ .process("resource.name") ]
告诉它仅在为iOS构建时才包含特定的XIB文件。 -
BuildSettingCondition
由Xcode自动处理,而无需在.xib
中声明,因为很明显它们是资源文件,因此Xcode handles them automatically。 -
Package.swift
似乎没有规则来分隔两个不同的xcodebuild
文件,以进行特定于平台的处理。
我想念什么?如何确保不将iOS专用资源强制包含在最终软件包中?
解决方法
暂无找到可以解决该程序问题的有效方法,小编努力寻找整理中!
如果你已经找到好的解决方法,欢迎将解决方案带上本链接一起发送给小编。
小编邮箱:dio#foxmail.com (将#修改为@)