我有一个像这个图像的导航抽屉.我想添加一个节分隔符(如分隔海王星的线).这看起来很简单,但我在网上找不到对我的情况有用的任何内容.
这是我的MainActivity:
public class MainActivity extends Activity {
private DrawerLayout mDrawerLayout;
private ListView mDrawerList;
private ActionBarDrawerToggle mDrawerToggle;
private CharSequence mDrawerTitle;
private CharSequence mTitle;
private String[] mPlanetTitles;
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_main);
mTitle = mDrawerTitle = getTitle();
mPlanetTitles = getResources().getStringArray(R.array.planets_array);
mDrawerLayout = (DrawerLayout) findViewById(R.id.drawer_layout);
mDrawerList = (ListView) findViewById(R.id.left_drawer);
// set a custom shadow that overlays the main content when the drawer opens
mDrawerLayout.setDrawerShadow(R.drawable.drawer_shadow, GravityCompat.START);
// set up the drawer's list view with items and click listener
mDrawerList.setAdapter(new ArrayAdapter<String>(this, …Run Code Online (Sandbox Code Playgroud) android android-layout android-fragments android-activity navigation-drawer
所以我有一个文本文件,它可能有一个制表符作为其字段分隔符(分隔符),或者可能有一个空格作为字段分隔符。我想检查该文本文件是否已制成表格,否则我将对该文件执行其他操作。我正在使用 bash 脚本。所以我对任何纯 bash、sed、awk、grep 等都持开放态度(注意:它们都是 GNU)。所以我正在考虑这样的结构:
if [if delimiter is tab]; then
#do soemthing
elif [if delimiter is space]; then
#do something else
fi
Run Code Online (Sandbox Code Playgroud)
有什么建议么?如果需要进一步解释,请告诉我。谢谢!
以下是有关文本文件外观的更新说明:
如果文本文件有制表符作为分隔符,则它在每一行上进行分隔。如果文本文件以空格作为分隔符,则不会对每一行进行分隔。
以下是我可能遇到的文本文件的示例:
分隔符是制表符:
col1 col2 col3
-------
1 2 3
4 5 6
Run Code Online (Sandbox Code Playgroud)
分隔符为空格: (空格在 12 和 3 && 4 和 56 之间)
col1col2col3
-----------
12 3
4 56
Run Code Online (Sandbox Code Playgroud) 我试图在我的 Nexus 5 启动时执行一个守护进程。这是一个从c++. 但是每当我构建 AOSP 并在我的 Nexus 5 设备上刷新图像时,守护程序都不会在后台运行。我将此代码添加到我的init.rc文件中:(这应该使它在启动时在后台运行)
setenforce 0
service my_daemon /system/bin/my_daemon
class main # Also tried: class core (but it didn't make a difference)
user root
group root
setenforce 1
Run Code Online (Sandbox Code Playgroud)
我使用 setenfonce 的原因是因为 Android 5.0 及更高版本上的 SELinux。问题是在启动时,守护进程没有在启动时运行。我不知道为什么。有什么建议?
我想在启动时为Android L或5禁用SELinux.原因是因为SELinux问题,我的守护程序在启动时不会开始执行.我在init.rc文件中有以下内容:
su 0 setenforce 0
service my_daemon /system/bin/my_daemon
class main # Also tried: class core (but it didn't make a difference)
user root
group root
Run Code Online (Sandbox Code Playgroud)
但是,在启动时,我使用adb shell来检查SELinux是否被禁用(使用getenforce)并返回Enforcing.我希望SELinux在启动时完全禁用.如果没有完全禁用那么至少Permissive.
有什么建议?
android selinux android-ndk android-4.4-kitkat android-5.0-lollipop
我认为这个问题不言而喻.我是初学者,所以如果可能,请告诉我.如果没有,那么你给我一个更好的解决方案,因为我的bash脚本在很大程度上依赖于某些awk语句,但大部分脚本都是bash.我awk在bash脚本中使用语句比较两个文件.基本上检查值是否相同.(见下面的文件)
FILE1.TXT
Name Col1 Col2 Col3
-----------------------
row1 1 4 7
row2 2 5 8
row3 3 6 9
Run Code Online (Sandbox Code Playgroud)
FILE2.TXT
Name Col1 Col2 Col3
-----------------------
row1 1 4 7
row2 2 5 999
Run Code Online (Sandbox Code Playgroud)
这是我的bash脚本的结构:
#!/bin/bash
.
.
.
awk -F '\t' '
# skips first two lines
FNR < 2 {next}
FNR == NR {
for (i = 2; i <= NF; i++) {
a[i,$1] = $i;
}
b[$1];
next;
}
($1 in b) {
for …Run Code Online (Sandbox Code Playgroud) 我正在从 Python 脚本中执行 Ruby 脚本。这是我的 Python 脚本“script007.py”的样子:
.
.
.
os.system("ruby script.rb") #executing ctrl+c here
print "should not be here"
.
.
.
Run Code Online (Sandbox Code Playgroud)
我在 Ruby 脚本运行时执行CTRL+C但它只是停止“script.rb”并继续执行“script007.py”的其余部分。我知道这是因为它在 Ruby 脚本停止时打印“不应该在这里”。
有没有办法可以在我的 Python 脚本中捕获CTRL+ C,即使它发生在 Ruby 脚本中?如果需要进一步解释,请告诉我。
我试图awk在bash脚本中检查文件是否为空.文件为空的此条件如下:如果文件的第一行的字段值后跟------(并且后面没有其他内容),则认为该文件为空.
这是特殊文件的结构:
file.txt的
col1 col2 col3 col4 col5
------
Run Code Online (Sandbox Code Playgroud)
到目前为止,这就是我所拥有的:
awk '
{
if (NR > 2)
print "NOT EMPTY"
else
print "EMPTY"
}
' file.txt
Run Code Online (Sandbox Code Playgroud)
我想要的输出是:
EMPTY
Run Code Online (Sandbox Code Playgroud)
我得到的空虚是:
EMPTY
EMPTY
Run Code Online (Sandbox Code Playgroud)
我如何只获得EMPTY一个输出?我知道这可能很简单,但我找不到任何东西.谢谢!
如果需要进一步解释,请告诉我.
编辑:此外,如果额外的空白行添加到file.txt,那么它将打印EMPTY多少额外的行.有更一般的方法吗?
我使用的是 Ruby 版本 1.9.3。这是我想要从中获取信息的实际 XML 页面的简单版本。我需要从需要登录凭据的安全网站访问它。我无法使用 Nokogiri,因为我无法使用它登录网站。
<root>
<person>
<name>Jack</name>
<age>10</age>
</person>
<person>
<name>Jones</name>
</person>
<person>
<name>Jon</name>
<age>16</age>
</person>
</root>
Run Code Online (Sandbox Code Playgroud)
正如您所看到的,有时该标签age不会出现。将 REXML 与 Ruby 结合使用,我使用以下代码:
agent = Mechanize.new
xml = agent.get("https://securewebsite.com/page.xml")
document = REXML::Document.new(xml.body)
name = XPath.match(document, "//person/name").map {|x| x.text}
# => ["Jack", "Jones", "Jon"]
age = XPath.match(document, "//person/age").map {|x| x.text}
# => ["10", "16"]
Run Code Online (Sandbox Code Playgroud)
问题是我无法将age与正确的关联起来name,因为索引现在乱序了。例如,在索引 1 处,name[1] 是 Jones,但age[1] 是 16。但这不是真的,因为personJones 的标签没有年龄标签。
有什么方法可以让数组age输出:# => ["10", nil ,"16"]以便我可以将正确的名字与其相应的年龄相关联? …
我使用正则表达式来匹配许多具有相似名称的文件名.请参阅以下文件.
file1="CGInoimport"
file2="doCGIimport"
file3="donoCGInoimport"
file4="importCGIno"
Run Code Online (Sandbox Code Playgroud)
我正在使用for循环来遍历每个文件变量以检查正则表达式是否匹配.我试图隔离包含该单词的文件名CGI.这是我到目前为止所拥有的.
for (( i=1; i < 5; i++ )) ; do
if [[ file$i =~ ^CGI$ ]] ; then
echo "There is a CGI in the name"
else
echo "This shouldn't happen"
fi
done
Run Code Online (Sandbox Code Playgroud)
问题出在每个人身上file,我得到了This shouldn't happen.我知道正则表达式有问题,但我不知道如何解决它.有什么建议?
如果需要进一步说明,请与我们联系.
我是初学者所以请光临我.我正在尝试使用SFML 2.1,C++和MS Visual Studio Professional 2013将图像输出到屏幕上.我在尝试将文件加载到纹理时遇到意外错误.它输出一大堆随机字符.我确定它是如何配置Visual Studio的SFML库或代码的问题.有人能解决这个问题吗?谢谢.
以下是我运行程序时的截图(http://i.stack.imgur.com/uMdLT.png):

这是我的代码:
#include <SFML/Graphics.hpp>
#include <iostream>
#include <string>
using namespace std;
int main() {
sf::RenderWindow window;
window.create(sf::VideoMode(800, 600), "My First SFML Game!"); // initializing
sf::Texture jetTexture;
sf::Sprite jetImage;
// Getting Error here!
if (!jetTexture.loadFromFile("fighter jet.png"))
throw std::runtime_error("Could not load fighter jet.png");
jetImage.setTexture(jetTexture);
while (window.isOpen())
{
sf::Event event;
while (window.pollEvent(event))
{
if (event.type == sf::Event::Closed)
window.close();
}
window.draw(jetImage);
window.display();
}
return 0;
}
Run Code Online (Sandbox Code Playgroud)
对于所有配置属性,它们如下所示:
链接器 - >常规(http://i.stack.imgur.com/NZg7P.png):

链接器 - >输入( …
我想知道如何使用ruby脚本传递参数的数量.到目前为止,我搜索过的所有内容都是函数.
我像这样执行我的脚本: ruby script.rb Arg1 Arg2 Arg3
现在我想获得参数的数量,在这种情况下它是3.我怎么能这样做?
我使用的是ruby1.9.3
编辑:我希望我的代码看起来像:
#!/usr/bin/env ruby
# check number of arguments passed
.
.
.
Run Code Online (Sandbox Code Playgroud)