我使用mplo3d绘制一系列点:
import pylab as p
import mpl_toolkits.mplot3d.axes3d as p3
fig=p.figure()
ax = fig.add_subplot(111, projection='3d')
ax.scatter([1], [0], [0], c='r', marker='^', picker=5)
ax.scatter([0], [1], [0], c='g', marker='^', picker=5)
ax.scatter([0], [0], [1], c='b', marker='^', picker=5)
Run Code Online (Sandbox Code Playgroud)
然后我添加一个选择器功能:
def onpick(event):
ind = event.ind
print ind
fig.canvas.mpl_connect('pick_event', onpick)
Run Code Online (Sandbox Code Playgroud)
并最终绘制它:
p.show()
Run Code Online (Sandbox Code Playgroud)
有没有办法从我点击的标记中获取3D坐标?到目前为止,我可以得到我在ax.scatter()中使用的列表中的点的索引,但是这不会削减它,因为我多次使用ax.scatter并且这必须是这样的(例如我使用不同的颜色)
问候
我正在使用Sencha Touch 2.0.1为Android,iOS和Blackberry构建应用程序.
我有一个Form-Panel,有大约10个选择区和一些sextfields.如果我在Android 2.3或更高版本上运行应用程序,则选择字段显示为选择器.到现在为止还挺好.
当用户开始填写以textfields开头的表单时,他可以使用虚拟键盘上的下一个按钮浏览表单.问题是,下一个按钮会忽略选择域.用户必须点击选择字段.
我无法弄清楚如何获得拾取器元素的上一个和下一个按钮.因此,我只能使用下一个按钮而不是按"完成"并点击下一个选择字段来浏览表单.这对用户来说会更舒服.
所以对sencha论坛的支持并没有多大帮助,见下文:
http://www.sencha.com/forum/showthread.php?219636-Native-select-field-for-Android http://www.sencha.com/forum/showthread.php?205581-Can-I-use -iOS本地选取器,INSTEAD-OF-ST2选取器
据此,选择器有prev-next和next按钮:http://www.sencha.com/forum/showthread.php? 205159-Ext.picker.Date-with-no-prev-and-next- 按钮&p = 803794
但我找不到他们:-(
我认为,这个问题有两种解决方案:
我真的不敢相信,这在像Sencha Touch这样的大框架中是如此重要.
任何人都面临同样的问题并有一个有效的解决方案
使用Objective-C,我使用下面显示的代码来设置/更改选择器的字体系列和大小:
- (UIView *)pickerView:(UIPickerView *)pickerView viewForRow:(NSInteger)row forComponent:(NSInteger)component reusingView:(UIView *)view {
UILabel* tView = (UILabel*)view;
if (!tView){
tView = [[UILabel alloc] init];
// Setup label properties - frame, font, colors etc
tView.font = [UIFont fontWithName:@"Times New Roman" size:fontsize];;
}
tView.text = [_mysitedata findKeyForRow:row];
NSLog(@"C key:%@ row:%ld comp:%ld", tView.text, (long int)row, (long int)component);
return tView;
}
Run Code Online (Sandbox Code Playgroud)
但是,Swift不接受从UIView到UILabel的演员阵容,因此我不能遵循这条看起来如下所示的路径:
func pickerView(pickerView: UIPickerView, viewForRow row: Int, forComponent component: Int, reusingView view: UIView?) -> UIView {
let label = view as! UILabel
label.font = UIFont(name: "Times …Run Code Online (Sandbox Code Playgroud) react-native Picker组件似乎不提供multiselect选项https://facebook.github.io/react-native/docs/picker.html#enabled
但是,我有一些库提供multiselect选项,如,
https://github.com/toystars/react-native-multiple-select
https://www.npmjs.com/package/react-native-multiple-select-list
但有没有办法选择多个值而不需要包?
我想创建一个无限/循环反应本机选择器,如下图所示。
所以,我的问题是:当我滚动时,如何使选择器在到达最后一个项目后从第一个项目重新开始?
这是我的代码:
render() {
const hourItems = [];
for(var i = 0; i < 24; i++) {
hourItems.push(
<Picker.Item label={i.toString()} value={i} key={i} />
);
}
return(
<ScrollView style={styles.panel}>
<Picker
selectedValue={this.state.hour}
onValueChange={(itemValue, itemIndex) => this.setState({ hour: itemValue })}
>
{hourItems}
</Picker>
</ScrollView>
);
}
Run Code Online (Sandbox Code Playgroud) 对于表 A 的每一行,我希望能够添加表 B 中的一行或多行。
Django 管理员有一个示例,即用户权限选择器——我附上了屏幕截图。
每个用户可以拥有任意数量的权限。权限从左侧开始。当您添加一个时,它会向右移动。您可以来回移动它们。
这就是我想要的我自己的两个模型。我如何获得这个小部件?
我首先认为我需要一个多对一的小部件,但进一步思考,我认为这是多对多的。用户获得权限后,其他用户仍然可以使用该权限。一个用户可以有多个权限;对于特定权限,可以将相同的权限授予多个用户——必须是多对多。我的两个表的工作方式相同。
我需要用户可以访问的添加和更新记录页面上的小部件;我不需要在管理页面上使用它。(我很幸运在用户管理页面上找到了我需要的完美示例。)
我Picker在 SwiftUI 中有一个Form,并且我正在尝试在选择器更改时处理该值。我希望能够对didSet代表当前选定值的变量执行此操作。
import SwiftUI
struct ContentView: View {
enum TransmissionType: Int {
case automatic
case manual
}
@State private var selectedTransmissionType: Int = TransmissionType.automatic.rawValue {
didSet {
print("selection changed to \(selectedTransmissionType)")
}
}
private let transmissionTypes: [String] = ["Automatic", "Manual"]
var body: some View {
NavigationView {
Form {
Section {
Picker(selection: $selectedTransmissionType,
label: Text("Transmission Type")) {
ForEach(0 ..< transmissionTypes.count) {
Text(self.transmissionTypes[$0])
}
}
}
}
}
}
}
Run Code Online (Sandbox Code Playgroud)
该PickerUI作品(大部分)如期望的那样,我可以看到默认值被选中,点击进入选择器,它会打开一个新的观点,我可以选择其它的值,然后返回到主窗体和新节目我值被选中。但是,didSet …
在 SwiftUI 中,我使用的Picker是这样的默认值:
Picker("Choose option", selection: $selectedRateID) {
ForEach(model.rates, id: \.id) {
Text($0.title).tag($0.id)
}
}
Run Code Online (Sandbox Code Playgroud)
选择器呈现为:
当我尝试选择一个选项时,详细信息屏幕如下所示:
有没有办法让选择器选项详细信息屏幕使用InsetGroupedListStyle如下所示:
我尝试添加.listStyle(InsetGroupedListStyle())到ForEach、Picker、 和其他节点,但它不起作用。关于如何实现这一目标有什么想法吗?(为什么上面有这么多空间却没有标题?)
我正在使用 SwiftUI 构建一个选择器。
现在我想为每个选择添加一个图标和文本。所以它应该看起来像这样:
这可能吗?如果是的话怎么办?
或者苹果人机界面指南根本不推荐它?
我已经尝试使用 HStack 将图像和文本包装在一起。
enum Category: String, CaseIterable, Identifiable {
case person
case more
var id: String { self.rawValue }
}
struct ContentView: View {
@State private var category = Category.person
var body: some View {
Picker("Category", selection: $category) {
HStack {
Image(systemName: "person")
Text("Person")
}.tag(Category.person)
HStack {
Image(systemName: "ellipsis.circle")
Text("More")
}.tag(Category.more)
}.pickerStyle(SegmentedPickerStyle())
.padding()
}
}
Run Code Online (Sandbox Code Playgroud)
但该框架将其分为四部分。
picker ×10
swiftui ×3
react-native ×2
swift ×2
date ×1
django ×1
duration ×1
flutter ×1
ios ×1
javascript ×1
many-to-many ×1
many-to-one ×1
matplotlib ×1
mplot3d ×1
next ×1
python ×1
swift2 ×1
time ×1
uipickerview ×1
widget ×1