小编Si8*_*Si8的帖子

线程安全C#单例模式

我对这里记录的单例模式有一些疑问:http: //msdn.microsoft.com/en-us/library/ff650316.aspx

以下代码是文章的摘录:

using System;

public sealed class Singleton
{
   private static volatile Singleton instance;
   private static object syncRoot = new object();

   private Singleton() {}

   public static Singleton Instance
   {
      get 
      {
         if (instance == null) 
         {
            lock (syncRoot) 
            {
               if (instance == null) 
                  instance = new Singleton();
            }
         }

         return instance;
      }
   }
}
Run Code Online (Sandbox Code Playgroud)

具体来说,在上面的例子中,是否需要在锁之前和之后将实例与null进行两次比较?这有必要吗?为什么不先执行锁定并进行比较?

简化以下是否有问题?

   public static Singleton Instance
   {
      get 
      {
        lock (syncRoot) 
        {
           if (instance == null) 
              instance = new Singleton();
        }

         return instance; …
Run Code Online (Sandbox Code Playgroud)

c# singleton design-patterns

74
推荐指数
5
解决办法
11万
查看次数

如何将ul水平对齐到div的中心?

我试图将一个<ul>内部集中在一个<div>.我尝试了以下内容

text-align: center;
Run Code Online (Sandbox Code Playgroud)

left: 50%;
Run Code Online (Sandbox Code Playgroud)

这不起作用.

CSS:

.container { 
    clear: both; 
    width: 800px; 
    height: 70px; 
    margin-bottom: 10px;
    text-align: center;
}

.container ul { 
    padding: 0 0 0 20px; 
    margin: 0; 
    list-style: none;
}

.container ul li { 
    margin: 0; 
    padding: 0; 
}
Run Code Online (Sandbox Code Playgroud)

我想让ul它集中在容器内.

html css centering

56
推荐指数
2
解决办法
19万
查看次数

在Android中创建文件夹

 import java.io.File;  
    File folder = new File(Environment.getExternalStorageDirectory() + "/TollCulator");
    boolean success = true;
    if (!folder.exists()) {
        //Toast.makeText(MainActivity.this, "Directory Does Not Exist, Create It", Toast.LENGTH_SHORT).show();
        success = folder.mkdir();
    }
    if (success) {
        //Toast.makeText(MainActivity.this, "Directory Created", Toast.LENGTH_SHORT).show();
    } else {
        //Toast.makeText(MainActivity.this, "Failed - Error", Toast.LENGTH_SHORT).show();
    }
Run Code Online (Sandbox Code Playgroud)

如果它不存在,上面应该在我的SD卡中创建一个文件夹,如果它没有做任何事情.虽然toast基于条件工作,但是当它不存在时它不会创建目录.知道怎么解决吗?

Manifest看起来像这样:

<?xml version="1.0" encoding="utf-8"?>
<manifest xmlns:android="http://schemas.android.com/apk/res/android"
    package="com.test.testing"
    android:versionCode="1"
    android:versionName="1.0" >

    <uses-permission android:name="android.permission.WRITE_EXTERNAL_STORAGE" />

    <uses-sdk
        android:minSdkVersion="6"
        android:targetSdkVersion="17" />

    <application
        android:allowBackup="true"
        android:icon="@drawable/ic_launcher"
        android:label="@string/app_name"
        android:theme="@style/AppTheme" >
        <activity
            android:name="com.test.testing.MainActivity"
            android:label="@string/app_name" >
            <intent-filter>
                <action android:name="android.intent.action.MAIN" />

                <category android:name="android.intent.category.LAUNCHER" …
Run Code Online (Sandbox Code Playgroud)

java android file

39
推荐指数
2
解决办法
10万
查看次数

如何设置搜索栏最小值和最大值

我有一个搜索栏,试图将值设置为60到180为1,而40到190为第二步为1.

sb1 = (SeekBar) findViewById(R.id.progresss);
        sb1.setOnSeekBarChangeListener(new OnSeekBarChangeListener() {       

            @Override       
            public void onStopTrackingTouch(SeekBar seekBar) {      
                // TODO Auto-generated method stub
                //int inVal = Integer.parseInt(String.valueOf(seekBar.getProgress()));
                //inVal =+ 70;
                //Toast.makeText(getApplicationContext(), String.valueOf(inVal),Toast.LENGTH_LONG).show();
            }       

            @Override       
            public void onStartTrackingTouch(SeekBar seekBar) {     
                // TODO Auto-generated method stub      
            }       

            @Override       
            public void onProgressChanged(SeekBar seekBar, int progress,boolean fromUser) {     
                // TODO Auto-generated method stub
                progress =+ 70;
                Toast.makeText(getApplicationContext(), String.valueOf(progress),Toast.LENGTH_LONG).show();

            }       
        });
Run Code Online (Sandbox Code Playgroud)

不管用.知道怎么解决吗?

java android seekbar

35
推荐指数
4
解决办法
9万
查看次数

JavaScript从对象数组中获取不在另一个对象数组中的元素

我是JavaScript编程的新手,我有两个具有以下结构的对象数组:

myFirstObjArray = [{foo: 1, bar: 1}, {foo: 3, bar: 3}, {foo: 4, bar: 5}];
mySecondObjArray = [{foo: 2}, {foo: 4}, {foo: 5}];
Run Code Online (Sandbox Code Playgroud)

我需要获得两个包含key值的独立数组foo,第一个包含第一个数组但不在第二个数组中的数组,基于key的值,foo第二个包含mySecondObjArray但不在myFirstObjArray.

有没有办法做到这一点没有

for(i=0;i<myFirstObjArray.length;i++)
   for(j=0;j<mySecondObjArray .length;j++)
      {...build first array here}

for(i=0;i<mySecondObjArray .length;i++)
   for(j=0;j<myFirstObjArray.length;j++)
      {...build second array here}
Run Code Online (Sandbox Code Playgroud)

?也许我的问题是一个我没找到的重复问题,所以请保持温和.

预期产量:

firstArray = [{foo: 1}, {foo: 3}];
secondArray = [{foo: 2}, {foo: 5}];
Run Code Online (Sandbox Code Playgroud)

javascript arrays javascript-objects

20
推荐指数
2
解决办法
1961
查看次数

如何获取父LI索引和子LI索引

小提琴:http://jsfiddle.net/fyrx459k/

脚本:

$(function() {
    $('.ul1 li').click( function(e) {
        e.preventDefault();
        var liIndex = $(this).index('li');
        console.log(liIndex);
    );
});
Run Code Online (Sandbox Code Playgroud)

HTML:

<ul class="ul1" id="ul1">
    <li><a href="">Test</a></li>
    <li><a href="">Test2</a></li>
    <li><a href="">Test3</a>
        <ul class="ul2">
            <li><a href="">Test3 - 1</a></li>
            <li><a href="">Test3 - 2</a></li>
        </ul>
    </li>
    <li><a href="">Test4</a>
        <ul class="ul2">
            <li><a href="">Test4 - 1</a></li>
            <li><a href="">Test4 - 2</a></li>
        </ul>
    </li>
</ul>
Run Code Online (Sandbox Code Playgroud)

如何修改脚本以具有以下内容:

  • Test#单击父LI()时,控制台将显示索引 - 例如,单击Test4将输出3(第四项)
  • 当点击子LI(Test# - #)时,它将显示父索引和子索引 - 例如,单击Test3 - 1将输出2.0(2是父LI,0是第一个子LI)

html javascript jquery

11
推荐指数
2
解决办法
976
查看次数

使用CSS将DIV向右下方浮动

我有三个DIV,在DIV中,我想将"了解更多"浮动到右下方,这样它就会在灰色背景之上.

三个div

CSS

/* the div for LEARN MORE */
#trt {
    z-index: 9999999999999;
    position: relative;
    float: right;
    bottom: 0; // not working
    top: 12; //not working
}

/* the entire div */
.main .cols { padding-left: 2px; padding-right: 0px; padding-top: 10px; }
.main .cols .col { width: 315px; height: 108px; float: left;  background: url(images/tempf.png) no-repeat 0 0; }
.main .cols .col:after { content:''; width: 100%; clear: both; }
.main .cols .col + .col { padding-left: 20px; }
.main .cols .col …
Run Code Online (Sandbox Code Playgroud)

html css

10
推荐指数
2
解决办法
5万
查看次数

如何比较今天的给定日期

我想将给定日期与今天进行比较,这是条件:如果提供的日期大于或等于6个月之前的今天,则返回true,否则返回false

码:

string strDate = tbDate.Text; //2015-03-29
if (DateTime.Now.AddMonths(-6) == DateTime.Parse(strDate)) //if given date is equal to exactly 6 months past from today (change == to > if date has to be less 6 months)
{
    lblResult.Text = "true"; //this doesn't work with the entered date above.
}
else //otherwise give me the date which will be 6 months from a given date.
{
    DateTime dt2 = Convert.ToDateTime(strDate);
    lblResult.Text = "6 Months from given date is: " + dt2.AddMonths(6); //this …
Run Code Online (Sandbox Code Playgroud)

c# datetime

10
推荐指数
1
解决办法
1万
查看次数

使用Theme.Light.NoTitleBar显示Light AlertDialog

我在清单中使用了以下行:

android:theme="@android:style/Theme.Light.NoTitleBar"
Run Code Online (Sandbox Code Playgroud)

没有标题栏并在我的应用程序中显示AlertDialog的简易版本,例如: 在此输入图像描述

但它仍以黑暗主题展示:

在此输入图像描述

我的Dialog Java代码:

    new AlertDialog.Builder(FreeDraw.this)
    .setIcon(android.R.drawable.ic_dialog_alert)
    .setTitle("Clear Drawing?")
    .setMessage("Do you want to clear the drawing board?")
    .setPositiveButton("Yes", new DialogInterface.OnClickListener() {

        @Override
        public void onClick(DialogInterface dialog, int which) {
            finish();
            startActivity(getIntent());  
        }
    })
    .setNegativeButton("No", null)
    .show();
Run Code Online (Sandbox Code Playgroud)

如何保持AlertDialog的主题灯?

java android android-alertdialog

9
推荐指数
2
解决办法
1万
查看次数

如何从小部件本身手动调用`onUpdate`

public class VWid extends AppWidgetProvider {

    public static String WIDGET_UPDATE = "WIDGET_UPDATE";

    @Override
    public void onReceive(Context context, Intent intent) {
        super.onReceive(context, intent);

        if (WIDGET_UPDATE.equals(intent.getAction())) {
            Toast.makeText(context, "onReceiver()", Toast.LENGTH_LONG).show();
        }
    }

    public void onUpdate(Context context, AppWidgetManager appWidgetManager, int[] appWidgetIds) {
        final int N = appWidgetIds.length;

        // Perform this loop procedure for each App Widget that belongs to this
        // provider
        for (int i = 0; i < N; i++) {
            int appWidgetId = appWidgetIds[i];
            int k, p;
            SimpleDateFormat dateFormat = new …
Run Code Online (Sandbox Code Playgroud)

java android widget

9
推荐指数
1
解决办法
1147
查看次数