有很多教程和SO的问题,实现自定义标题栏.但是,在我的自定义标题栏中,我有一个自定义渐变背景,我想知道如何在我的代码中动态设置它.
这是我的自定义标题栏被调用的地方:
requestWindowFeature(Window.FEATURE_CUSTOM_TITLE);
setContentView(R.layout.foo_layout);
getWindow().setFeatureInt(Window.FEATURE_CUSTOM_TITLE, R.layout.custom_title_bar);
Run Code Online (Sandbox Code Playgroud)
这是我的custom_title_bar
:
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
android:orientation="horizontal"
android:layout_width="fill_parent"
android:layout_height="fill_parent"
android:background="@layout/custom_title_bar_background_colors">
<ImageView
android:layout_width="fill_parent"
android:layout_height="wrap_content"
android:src="@drawable/title_bar_logo"
android:gravity="center_horizontal"
android:paddingTop="0dip"/>
</LinearLayout>
Run Code Online (Sandbox Code Playgroud)
如您所见,线性布局的背景由此人定义:
<shape xmlns:android="http://schemas.android.com/apk/res/android">
<gradient
android:startColor="#616261"
android:endColor="#131313"
android:angle="270"
/>
<corners android:radius="0dp" />
</shape>
Run Code Online (Sandbox Code Playgroud)
我想要做的是在我的代码中动态设置这些渐变颜色.我不想像我们现在那样在我的XML文件中对它们进行硬编码.
如果您有更好的方法来设置背景渐变,我会对所有想法持开放态度.
先感谢您!!
我正在寻找一种方法来创建一个简单的HTML表,可以在数据库更改事件时实时更新; 特别添加了一条新记录.
换句话说,将其视为执行仪表板.如果进行了销售并在数据库中添加了新行(在我的情况下是MySQL),那么网页应该用新行"刷新"表格.
我已经看到了一些关于新EVENT GATEWAY
用法的信息,但所有的例子都使用Coldfusion作为"推动者",而不是"消费者".我想让Coldfusion将事件更新/推送到网关并消耗响应.
如果可以使用AJAX和CF的组合完成,请告诉我!
我真的只是想了解从何处开始实时更新.
先感谢您!!
编辑/所选答案的说明:
我最终选择@ bpeterson76的答案,因为目前最简单的实施是小规模的.我真的很喜欢他的Datatables建议,这就是我用来近乎实时更新的内容.
随着我的网站越来越大(希望如此),我不确定这是否是一个可扩展的解决方案,因为每个用户都会点击"监听器"页面,然后再查询我的数据库.我的查询相对简单,但我仍然担心将来的性能.
在我看来,随着HTML5开始成为Web标准,@ iKnowKungFoo建议的Web套接字方法很可能是最好的方法.使用长轮询的Comet也是一个好主意,但它实现起来有点麻烦/似乎也有一些扩展问题.
因此,我们希望网络用户开始采用支持HTML5的更现代的浏览器,因为Web套接字是一种相对简单且可扩展的方式来接近实时.
如果您认为我做出了错误的决定,请发表评论.
最后,这里有一些源代码:
使用Javascript:
请注意,这是一个非常简单的实现.它只是想查看当前数据表中的记录数是否已更改,如果是,则更新表并发出警报.生产代码更长,更复杂.这只是展示了一种接近实时更新的简单方法.
<script src="http://ajax.googleapis.com/ajax/libs/jquery/1.6.1/jquery.js"></script>
<script type="text/javascript" charset="utf-8">
var originalNumberOfRecsInDatatable = 0;
var oTable;
var setChecker = setInterval(checkIfNewRecordHasBeenAdded,5000); //5 second intervals
function checkIfNewRecordHasBeenAdded() {
//json object to post to CFM page
var postData = {
numberOfRecords: originalNumberOfRecsInDatatable
};
var ajaxResponse = $.ajax({
type: "post",
url: "./tabs/checkIfNewItemIsAvailable.cfm",
contentType: "application/json",
data: JSON.stringify( postData )
})
// When the response comes back, if update is …
Run Code Online (Sandbox Code Playgroud) 刚刚升级到iOS 7 beta(和Xcode 5 beta),当我构建一个预先存在的应用程序,我正在转向iOS 7时收到以下警告
Check dependencies: warning: CODE_SIGN_ENTITLEMENTS specified without a valid Developer Signing Identity for iOS.
但是,当我Code Signing Entitlements
在Build Settings中检查标志时,我实际上没有定义代码签名权利:
有任何想法吗?这是iOS 7中现在需要的吗?如果是这样,我将如何定义代码签名权利?
我创建了一个返回XML的存储过程,我想在我创建的方法中返回该XML.
我有两个问题.首先,在进行一些搜索之后,建议不要使用.ExecuteScalar();
它,因为它会截断超过2033个字符的字符串.
所以,我发现了一个名为的函数ExecuteXMlReader()
,但是在.NET 4.0(C#)上运行的Visual Web Developer 2010 Express中,它抛出了错误 "System.Data.SqlClient.SqlCommand' does not contain a definition for 'ExecuteXMlReader' and no extension method 'ExecuteXMlReader' accepting a first argument of type 'System.Data.SqlClient.SqlCommand' could be found"
这是我的存储过程:
CREATE PROCEDURE dbo.GETReport
(@ReportDate date)
AS
SELECT * FROM ReportTbl
WHERE ReportDate = @ReportDate
for xml auto, elements
set nocount on;
RETURN
Run Code Online (Sandbox Code Playgroud)
这是我的方法:
using System.Data;
using System.Data.SqlClient;
...
//connect
SqlConnection conn = new SqlConnection("Data Source=localhost; User Id=foo; Password=foo; Initial Catalog=Database1");
conn.Open();
//create command
SqlCommand …
Run Code Online (Sandbox Code Playgroud) 随着iOS 5的发布,以及更具体的"Siri"的发布,是否有可能让该应用程序在我的某个应用程序中执行操作/任务?
换句话说,我在这里读到该应用程序与Fandango集成订购电影票.
那么,我怎么能用Siri注册我的应用程序的事件/功能,以便它执行任务?
为了争论,让我们假装我的应用程序也出售像Fandango这样的电影票.为什么他们会得到所有的乐趣?
我知道这有一个简单的解决方案,但我似乎无法使其工作......
使用其他Stack Overflow答案和Microsoft的文档,我知道PrincipalContext
必须设置如下:
PrincipalContext pc = new PrincipalContext(ContextType.Domain, "YOURDOMAIN");
Run Code Online (Sandbox Code Playgroud)
或者像这样:
PrincipalContext domainContext = new PrincipalContext(ContextType.Domain,"YOURDOMAIN", null,ContextOptions.Negotiate | ContextOptions.SecureSocketLayer);
Run Code Online (Sandbox Code Playgroud)
我的问题是,"YOURDOMAIN"
如果我连接到本地主机,我会为该属性添加什么?
尝试这个结束于PrincipalServerDownException
:
PrincipalContext pc = new PrincipalContext(ContextType.Domain, "localhost:3600")
Run Code Online (Sandbox Code Playgroud) 我使用4.0框架在Visual Web Developer 2010 Express中设置了WCF Web服务,并使用本教程将其转换为RESTful服务。
我可以根据自己的喜好修改它,以接受url参数,如下所示:
namespace RestServicePublishing
{
[ServiceContract]
public interface IRestService
{
[OperationContract(Name="GetXML")]
[WebGet(UriTemplate = "/{param1}/{param2}")]
XmlDocument GetXML(string param1, string param2);
}
}
Run Code Online (Sandbox Code Playgroud)
我遇到的问题是,尝试返回这样的XML文档时,出现“无法序列化'System.Xml.XmlDocument'类型”错误:
namespace RestServicePublishing
{
public class RestService : IRestService
{
public XmlDocument GetXML(string param1, string param2)
{
//I am not using the parameters currently, I would just like to see if
//i can return XML first with this simple example:
StringBuilder sb = new StringBuilder();
System.Xml.XmlWriter writer = XmlWriter.Create(sb);
writer.WriteStartDocument();
writer.WriteStartElement("People");
writer.WriteStartElement("Person"); …
Run Code Online (Sandbox Code Playgroud) 我正在尝试将我OnClickListener()
的一个子类化,并且我得到一个'空指针'异常,但我不确定为什么......我对此感到困惑..任何帮助都将非常感谢..
以下是com.Tools中的Utilities Class中的代码
public class Utilities
{
public static View.OnClickListener CreateOnClickListener(final Context context,final Class<?> cls)
{
final Activity act = new Activity();
View.OnClickListener listener = new View.OnClickListener()
{
public void onClick(View v)
{
Intent window = new Intent(context, cls);
act.startActivity(window);
act.finish();
}
};
return listener;
}
}
Run Code Online (Sandbox Code Playgroud)
当我从我的主要课程中调用它时,我这样做:
final Button button1 = (Button) findViewById(R.id.button1);
button1.setOnClickListener(Utilities.CreateOnClickListener(MainMenu.this, SettingsMenu.class));
Run Code Online (Sandbox Code Playgroud)
当我调试时,此行发生异常:
act.startActivity(window);
Run Code Online (Sandbox Code Playgroud)
有任何想法吗???非常感谢你提前!!!