我在AsyncTask中使用此代码以确保在AsyncTask运行时屏幕保持明亮:
getWindow().addFlags(WindowManager.LayoutParams.FLAG_KEEP_SCREEN_ON);
Run Code Online (Sandbox Code Playgroud)
但是,我不希望AsyncTask运行后屏幕被强制显示.我怎样才能基本上"撤消"或"关闭"该选项?
我正试图从同一个网络中的计算机名称获取一个IP地址...像C#windows应用程序中的CMD命令"nbtstat -a COMPNAME"
我想要两个动作表,但我怎么知道哪个被称为方法 -(void)actionSheet:(UIActionSheet *)actionSheet clickedButtonAtIndex:(NSInteger)buttonIndex
有些东西我觉得很简单,我很惊讶得到这么奇怪的错误......
在我的程序中,我有一个带有5个按钮的布局.当您按下按钮时,它会启动手机的拨号器,并在其中预先加载号码.我之前没有遇到任何问题,但之后我尝试将电话号码移动到XML文件中的字符串,我放在名为'phone.xml'的/ res/values文件夹中.这是我的Java文件代码的一部分:
public void launchDialer(String number){
String numberToDial = "tel:"+number;
startActivity(new Intent(Intent.ACTION_DIAL, Uri.parse(numberToDial)));
}
public void onClick(View v) {
switch (v.getId()) {
case R.id.police_button1:
launchDialer(Integer.toString(R.string.police1_phone));
break;
case R.id.police_button2:
launchDialer("" + R.string.police2_phone);
break;
case R.id.police_button3:
launchDialer("" + R.string.police3_phone);
break;
case R.id.police_button4:
launchDialer("" + R.string.police4_phone);
break;
case R.id.police_button5:
launchDialer("" + R.string.police5_phone);
break;
}
}
Run Code Online (Sandbox Code Playgroud)
这是我的phone.xml文件:
<?xml version="1.0" encoding="utf-8"?>
<resources>
<string name="police1_phone">"555-555-5555"</string>
<string name="police2_phone">1-800-555-5555</string>
<string name="police3_phone">555-555-5555</string>
<string name="police4_phone">555-555-5555</string>
<string name="police5_phone">555-555-5555</string>
</resources>
Run Code Online (Sandbox Code Playgroud)
正如你在Java文件中看到的那样,我为police1_phone和police2_phone尝试了不同的东西,但它们都没有用.您还可以看到我尝试在xml文件中围绕其中一个电话号码添加引号,但它仍然无效.我的输出一直是一些随机的7位数字,甚至没有接近我想要打印的电话号码.这个Java代码有效:
launchDialer("555-555-5555");
Run Code Online (Sandbox Code Playgroud)
但是,我需要它从XML文件中读取.有任何想法吗?
我想写一个API可以从Gmail,Yahoo和其他电子邮件中获取联系人列表的内容.如何才能做到这一点?它们是否已经存在APIs或者我是否需要编写PHP代码来提取信息?
我需要像DropBox这样的推荐系统.有没有人自己编码或者它是否可用作开源?
https://www.dropbox.com/referrals
请指导我这方面.任何链接或解释都可以完成这项工作.
谢谢 :)
这是我的C程序的一部分:
FILE *fin_length;
int c;
int countNewLines = 0;
fin_length = fopen( argv[1], "r" );
while( ( c == fgetc( fin_length ) ) != EOF ) {
if( c == 10 ) countNewLines++;
}
fclose( fin_length );
Run Code Online (Sandbox Code Playgroud)
我用命令行参数运行程序./a.out myMessage.dat. myMessage.dat是5行长,每行只包含一个短句.因此,我希望循环找到这5行,if( c == 10 )并在countNewLines每次找到回车符时添加一行.
为什么我在这里得到一个无限循环?
我试图做一个简单的图像裁剪,但由于某种原因,它不尊重我的起始x,y位置.总是在0,0开始收获.以下是我正在做的事情:
Bitmap original = new Bitmap(pictureBox1.Image);
int x = Convert.ToInt32(txtX.Text);
int y = Convert.ToInt32(txtY.Text);
int dX = Convert.ToInt32(txtDeltaX.Text);
int dY = Convert.ToInt32(txtDeltaY.Text);
Point loc = new Point(x, y);
Size cropSize = new Size(dX, dY);
Rectangle cropArea = new Rectangle(loc, cropSize);
Bitmap bmpCrop = CropImage(original, cropArea);
pictureBox1.Image = bmpCrop;
Run Code Online (Sandbox Code Playgroud)
裁剪方法:
public Bitmap CropImage(Bitmap source, Rectangle section)
{
// An empty bitmap which will hold the cropped image
Bitmap bmp = new Bitmap(section.Width, section.Height);
Graphics g = Graphics.FromImage(bmp);
// Draw the given …Run Code Online (Sandbox Code Playgroud) 我的应用程序的主要活动在清单中设置为始终处于纵向视图.当我将应用程序加载到平板电脑上时,此工作正常.
但是,当我使用我的菜单按钮并单击"设置"(打开一个AlertDialog膨胀xml布局)时,平板电脑将显示整个对话框的左2/3左右.其余的都在屏幕右侧.如果我在平板电脑上安装我的应用程序,同时在应用程序未运行时将平板电脑转为横向模式(即使我返回到Portrait并单击应用程序),也只会出现这种情况.该对话框甚至调用this.setRequestedOrientation(ActivityInfo.SCREEN_ORIENTATION_PORTRAIT);以确保它保持纵向(即使此调用问题仍然存在).
换句话说,AlertDialog在纵向视图中显示的方式是它正在炸毁一个横向视图(因此它的一些在屏幕外),即使它的实际方向AlertDialog是肖像,就像它应该的那样.
(如果上面的措辞令人困惑,我很抱歉 - 如果需要,请我澄清一下.)
那么为什么平板电脑会这样做呢?我已经在一些Android手机上测试了这种情况并没有发生,所以我不明白平板电脑为什么会这样做.
侧面说明:
这甚至都不会发生这种AlertDialog情况.AlertDialog如果我以横向模式启动应用程序,那么在应用程序开始时显示的另一个EULA(另一个)也会出现这种情况.
我甚至通过删除指定纵向/横向模式的所有调用来允许景观的可用性,并且平板电脑在纵向视图中仅在平板电脑上而不是电话时仍在屏幕外扩展对话框.
编辑:
此代码在手机上运行良好,但平板电脑问题仍然存在.如果我dialog.show();在下面取消注释,平板电脑和手机会显示我想要的尺寸,但会显示黑度而不是灰色的主屏幕.有任何想法吗?
调用函数执行此操作:
showDialog(EXAMPLE_CASE);
Run Code Online (Sandbox Code Playgroud)
调用函数调用的函数:
protected Dialog onCreateDialog(final int id) {
Dialog dialog;
AlertDialog.Builder builder = new AlertDialog.Builder(this);
Display display = getWindowManager().getDefaultDisplay();
int mwidth = display.getWidth();
int mheight = display.getHeight();
WindowManager.LayoutParams lp = new WindowManager.LayoutParams();
switch(id) {
// Example of what all my cases look like (there were way too many to copy)
case EXAMPLE_CASE:
builder.setTitle("Example") …Run Code Online (Sandbox Code Playgroud) 我相信我以前见过这样的问题,但我无法在任何地方找到它...所以,我会发布我的问题版本,除非别人知道它的链接.
无论如何...
我有一个AlertDialog在我的strings.xml文件中显示一个字符串以显示在对话框中.字符串看起来像这样:
<string name="about_app">
Blah blah blah talking about stuff this is a line
Oh look I continued onto another line! Now I want these...\n\n
So this is another paragraph! Intriguing. Yes, onto the next line
Android text doesn't necessarily consider this a new line, which is fine
becauase i only care about paragraphs, which I'm using backslash n's for!\n\n
And... here's my final statement! Woo.\n
</string>
Run Code Online (Sandbox Code Playgroud)
一切都在AlertDialog中正确显示(有些)."Blah blah blah ......"与它的左边缘对齐AlertDialog并继续直到它击中\n\n.从这里,我得到了我想要的间距"所以这是......".然而,"所以这就是......"缩进了一个令人讨厌的小空间,我无法摆脱它!同样的"而且......这是我的......".有人有解决方案吗? …
android ×4
c# ×2
.net ×1
api ×1
c ×1
contacts ×1
file-io ×1
gmail ×1
indentation ×1
ios ×1
ios4 ×1
java ×1
loops ×1
orientation ×1
processing ×1
xml ×1
xml-parsing ×1