Skip to content

Instantly share code, notes, and snippets.

View MadeBugs's full-sized avatar

Jack Ma MadeBugs

View GitHub Profile
@MadeBugs
MadeBugs / textField.dart
Last active December 20, 2022 07:22
输入框
TextField(
keyboardType: TextInputType.number,
inputFormatters: [FilteringTextInputFormatter.allow(RegExp(r'[0-9]'))],
decoration: InputDecoration(
hintText: "入れ替えの比例",
hintStyle: TextStyle(fontSize: 14, color: AppColors.color_cccccc),
fillColor: AppColors.color_f6f6f6,
filled: true,
border:
OutlineInputBorder(borderRadius: BorderRadius.circular(6), borderSide: BorderSide.none),
@MadeBugs
MadeBugs / corsor_at_last.dart
Created December 1, 2022 05:48
[输入框光标置于最后] Dart
// 一般赋值使用的是_controller.text = "demo";
// 如果要使光标置于最后要使用下面这种方式
_controller.value = TextEditingValue(
text: result,
selection: TextSelection.fromPosition(TextPosition(
affinity: TextAffinity.downstream,
offset: result.length
))
);
@MadeBugs
MadeBugs / info.plist
Last active December 1, 2022 05:49
[设置允许HTTP请求] iOS
<key>NSAppTransportSecurity</key>
<dict>
<key>NSExceptionDomains</key>
<dict>
<key>www.baidu.com</key>
<dict>
<key>NSIncludesSubdomains</key>
<true/>
<key>NSExceptionRequiresForwardSecrecy</key>
<false/>
@MadeBugs
MadeBugs / isConnectedToVpn.swift
Created August 6, 2019 01:15
判断当前网络是否连接了VPN,用于抓包什么的
private var isConnectedToVpn: Bool {
if let settings = CFNetworkCopySystemProxySettings()?.takeRetainedValue() as? Dictionary<String, Any>,
let scopes = settings["__SCOPED__"] as? [String:Any] {
for (key, _) in scopes {
if key.contains("tap") || key.contains("tun") || key.contains("ppp") || key.contains("ipsec") || key.contains("ipsec0") {
return true
}
}
}
return false
@MadeBugs
MadeBugs / Example.swift
Created July 31, 2019 08:35
swizzling - swift
class Test {
dynamic func foo() {
print("bar")
}
}
extension Test {
@_dynamicReplacement(for: foo())
func foo_new() {
print("bar new")
@MadeBugs
MadeBugs / shadow.swift
Last active November 22, 2019 07:13
设置阴影,与圆角并存的那种
let shadowPath = UIBezierPath.init(rect: regiseButton.bounds)
regiseButton.layer.masksToBounds = false;
regiseButton.layer.shadowColor = UIColor.black.cgColor
regiseButton.layer.shadowOffset = CGSize(width: 0, height: 0)
regiseButton.layer.shadowOpacity = 1;
regiseButton.layer.shadowRadius = 25
regiseButton.layer.shadowPath = shadowPath.cgPath;
@MadeBugs
MadeBugs / demo.swift
Created July 29, 2019 06:29
textView设置placeholder
//要先添加到view上,不然不显示,
TextView.addSubview(label)
TextView.setValue(label, forKey: "_placeholderLabel")
// 如果是系统的弹窗,则无法获取到,比如在用Airprint,这时是无法获取到的,结果为nil
func getPrexxx() -> UIViewController {
var result = UIApplication.shared.keyWindow?.rootViewController
while ((result?.presentedViewController) != nil) {
result = result?.presentedViewController
}
return result
}
@MadeBugs
MadeBugs / shoutScreenView.swift
Last active July 19, 2019 08:18
获取当前屏幕截图
// 截取屏幕生成UIImage
func shoutScreen() -> UIImage {
let render = UIGraphicsImageRenderer(size: (window?.bounds.size)!)
let image = render.image { (ctx) in
window?.drawHierarchy(in: window!.bounds, afterScreenUpdates: false)
}
return img
}
@MadeBugs
MadeBugs / xcodeBuild++.sh
Last active July 6, 2019 08:02
xcode build version 自增
if [ $CONFIGURATION == Debug ]; then
echo "当前为 Release Configuration,开始自增 Build"
plist=${INFOPLIST_FILE}
buildnum=$(/usr/libexec/PlistBuddy -c "Print CFBundleVersion" "${plist}")
if [[ "${buildnum}" == "" ]]; then
echo "Error:在Plist文件里没有 Build 值"
exit 2
fi
buildnum=$(expr $buildnum + 1)
/usr/libexec/PlistBuddy -c "Set CFBundleVersion $buildnum" "${plist}"