使用我的应用主题,我使用此属性显示彩色导航栏(屏幕底部带有后退按钮的导航栏)
<item name="android:navigationBarColor">@color/theme_color</item>
Run Code Online (Sandbox Code Playgroud)
当软键盘出现时,颜色变为黑色.我想保留我的主题颜色.
android soft-keyboard navigationbar android-theme android-styles
在Android上,我这样做是用一个简单的attacched地图作为信息来创建一个服务广播
HashMap<String, String> record = new HashMap<>();
record.put("info, "my android info");
WifiP2pDnsSdServiceInfo serviceInfo = WifiP2pDnsSdServiceInfo
.newInstance("_myservice", "_tcp", record);
WifiP2pManager manager = (WifiP2pManager) getSystemService(Context.WIFI_P2P_SERVICE);
Channel channel = manager.initialize(this, this.getMainLooper(), null);
manager.addLocalService(channel, serviceInfo, null);
Run Code Online (Sandbox Code Playgroud)
检索另一个信号
manager.setDnsSdResponseListeners(channel, this, this);
@Override
public void onDnsSdTxtRecordAvailable(String fullDomainName, Map<String, String> txtRecordMap, WifiP2pDevice srcDevice)
Run Code Online (Sandbox Code Playgroud)
在iOS上,它是相同的服务名称和信息地图
MCPeerID* _myPeerId=[[MCPeerID alloc] initWithDisplayName:@"my ios peer"];
NSDictionary* _serviceInfo=@{@"info": @"my ios info"};
MCNearbyServiceAdvertiser* _serviceAdvertiser = [[MCNearbyServiceAdvertiser alloc]
initWithPeer:_myPeerId discoveryInfo:_serviceInfo serviceType:@"myservice"];
_serviceAdvertiser.delegate=advertiseDelegate;
MCNearbyServiceBrowser* _serviceBrowser=[[MCNearbyServiceBrowser alloc]
initWithPeer:_myPeerId serviceType:@"myservice"];
_serviceBrowser.delegate=browserDelegate;
[_serviceAdvertiser startAdvertisingPeer];
[_serviceBrowser startBrowsingForPeers];
Run Code Online (Sandbox Code Playgroud)
和代表们
-(void)browser:(MCNearbyServiceBrowser *)browser …Run Code Online (Sandbox Code Playgroud) 我对 iOS 发行版还很陌生,所以我来这里是为了寻求正确的方向,特别是因为我的目标不是一个常见的出版物。
我想分发给数百名选定的用户至少半年。我需要使用什么配置文件,开发人员还是企业?供应的到期日期如何?它们之间是有区别的,不是吗?我们为此使用什么分发平台?TesFlight 是合适的选择吗?
xcode software-distribution release-builds ios iosdeployment
如果您使用WhatsApp的最新版本,您会注意到如果您长时间单击聊天中的文本框,则工具栏上的菜单图标将随着旋转动画的变化而变化.
我怎么能重现那种效果?我知道我应该使菜单无效而不是如何制作动画.
这是我用作按钮背景的“mydrawable”的 xml
<?xml version="1.0" encoding="utf-8"?>
<selector xmlns:android="http://schemas.android.com/apk/res/android">
<item android:state_focused="false" android:state_pressed="false" >
<shape xmlns:android="http://schemas.android.com/apk/res/android"
android:shape="rectangle">
<gradient
android:angle="-45"
android:endColor="@color/colorPrimary700"
android:startColor="@color/colorPrimary600"
android:type="linear" />
<corners android:radius="@dimen/ic_button_corner"></corners>
</shape>
</item>
<item android:state_focused="false" android:state_pressed="true" >
<shape xmlns:android="http://schemas.android.com/apk/res/android"
android:shape="rectangle">
<gradient
android:angle="-45"
android:endColor="@color/colorPrimary800"
android:startColor="@color/colorPrimary700"
android:type="linear" />
<corners android:radius="@dimen/ic_button_corner"></corners>
</shape>
</item>
</selector>
Run Code Online (Sandbox Code Playgroud)
这是一个用例
<Button
android:id="@+id/login_button"
style="?android:textAppearanceSmall"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:background="@drawable/mydrawable"
android:text="@string/log_in"/>
Run Code Online (Sandbox Code Playgroud)
如何将此静态可绘制对象移植到具有可配置参数(例如每个项目的渐变中使用的颜色和大小角半径)的自定义视图中?
例如通过 Java
MyDrawable myDrawable=new MyDrawable();
myDrawable.setGradientColors(color1, color2);
myDrawable.setCornerRadius(size);
button.setBackground(Drawable);
Run Code Online (Sandbox Code Playgroud)
是否也可以通过自定义按钮(MyButton,而不是 MyDrawable)?
<MyButton
parameter_gradientcolor1:@color/color1
parameter_gradientcolor2:@color/color2
... />
Run Code Online (Sandbox Code Playgroud)
编辑
这是行不通的,既没有对点击事件的反应,也没有正确的渐变
public class SelectorButton extends AppCompatButton {
StateListDrawable mStateListDrawable;
public SelectorButton(Context context, …Run Code Online (Sandbox Code Playgroud) xml android android-custom-view android-launcher android-drawable
WhatsApp的最后一个版本完成了我正在谈论的内容.在选项卡之间滚动时,工具栏会显示不同的菜单选项.我可以用适配器和片段实现ViewPager但不是这个.怎么可能呢?我真的不知道背后是什么样的伎俩.每次切换页面时它都会改变
class MyObject {
int field;
public void setField(int arg1) {
this.field = arg1;
}
}
HashMap<String, MyObject> map;
...
... // put some MyObjects in the map with strings as keys
...
for (MyObject object : map.values()) {
object.setField(12345);
}
Run Code Online (Sandbox Code Playgroud)
我在循环中对对象所做的更改是在地图中的相同对象上进行的?
指南说明了这个values()方法
返回此映射中包含的值的Collection视图.该集合由地图支持,因此对地图的更改将反映在集合中,反之亦然.
"更改地图"是否意味着"对映射对象的更改"?那么这种setField方法可以改变地图中的对象吗?
例如
echo "filename.pdf" | cut -d'.' -f 1
Run Code Online (Sandbox Code Playgroud)
这样我就得到了“文件名”字符串。我想将其存储在一个名为FILE的变量中,然后像这样使用它:
DIR=$PATH/$FILE.txt
Run Code Online (Sandbox Code Playgroud)
因此,我的脚本想用pdf的相同名称创建一个file.txt(不是文件的副本,只是名称)。切
FILE=
Run Code Online (Sandbox Code Playgroud)
但我只得到“ path / .txt”,因此文件名丢失。
我试图了解 Apple 开发中心背后的机制。
我希望将我的个人 ID 与 Apple 开发人员的专业 ID 分开。他们将 Apple ID 绑定到 Macbook 中的用户,所以如果我想使用 xcode 制作应用程序,我必须创建另一个具有专业 ID 的用户?如果我理解有没有其他方式,可能比这更容易?
允许您使用单个 ID(并且只有一个用户在 macbook 上使用您的所有私人生活资料)但还可以保留使用另一个 ID 作为 Apple 开发人员获得的开发配置文件。
我想在默认NSNotificationCenter调用的方法中使用postNotificationName停止指示器的动画.所以我在主线程上做这个
-(void)method
{
...
[ind performSelectorOnMainThread:@selector(stopAnimating) withObject:nil waitUntilDone:NO];
}
Run Code Online (Sandbox Code Playgroud)
它确实无效.方法被正确调用,任何其他被调用的选择器完成它们的工作但不是stopAnimating.我把[ind stopAnimating]放在另一个函数中,然后通过performSelectorOnMainThread调用它,但它仍然无效.