小编Lee*_*fin的帖子

从GIT控件中删除文件

可能重复:
git - 从源代码管理中删除文件(但不是从源代码中删除)

我有一个.classpath目前在GIT存储库中的文件.

我从remove repository(git pull origin master)中删除后.如何从GIT控件中删除此文件,我的意思是NOT to delete来自我的计算机的此文件,将其从GIT版本控制中删除.(因为版本控制不需要此文件).

PS

我试过git rm <path-to>/.classpath,但是然后我的整个项目抱怨错误的类路径,为什么git rm删除我的文件而不是从版本控制中删除?

git github git-svn

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

React-Query:单击按钮时如何使用Query

我是这个反应查询的新手库的。

我知道当我想获取数据时,使用这个库我可以做这样的事情:

const fetchData = async()=>{...}

// it starts fetching data from backend with this line of code
const {status, data, error} = useQuery(myKey, fetchData());
Run Code Online (Sandbox Code Playgroud)

有用。但是如何仅在单击按钮时触发数据获取?,我知道我可能可以做类似的事情<Button onPress={() => {useQuery(myKey, fetchData())}}/>,但是如何管理返回的数据和状态...

react-native react-query

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

跳过Model中的某些验证方法

我正在使用Rails v2.3

如果我有一个型号:

class car < ActiveRecord::Base

  validate :method_1, :method_2, :method_3

  ...
  # custom validation methods
  def method_1
    ...
  end

  def method_2
    ...
  end

  def method_3
    ...
  end
end
Run Code Online (Sandbox Code Playgroud)

如您所见,我有3种自定义验证方法,我将它们用于模型验证.

如果我在这个模型类中有另一个方法,它保存模型的新实例,如下所示:

# "flag" here is NOT a DB based attribute
def save_special_car flag
   new_car=Car.new(...)

   new_car.save #how to skip validation method_2 if flag==true
end
Run Code Online (Sandbox Code Playgroud)

我想跳过method_2这种保存新车的特定方法的验证,如何跳过某些验证方法?

ruby-on-rails ruby-on-rails-3 ruby-on-rails-3.1

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

什么是"合同"类是什么意思

我正在读"Java编程语言 "一书.在解释最重要方法的章节中,它说:

使覆盖方法(在子类中)比在超类中更难访问会违反超类的合同......

整个案文是可以理解的.我唯一的问题是什么是超类的合同合同Java类意味着什么?

java inheritance

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

受保护的修饰符是什么意思?

我正在阅读"Java编程语言"第3版.

在第3.5章中,它protected使用以下单词说明了修饰符:

更确切地说,除了可以在类本身内访问以及在同一个包中编码之外,还可以通过对象引用从类访问受保护的成员,这些引用至少与类的类型相同,类的类型的引用或其中一个亚型.

两个方面让我感到困惑:

1.受保护的成员可以通过同一个包中的代码访问吗?之前我所知道的是受保护的成员只能由子类访问...

2.我不明白这是什么a protected member can also be accessed from ...意思,任何人都可以向我解释好吗?

java protected access-modifiers

27
推荐指数
3
解决办法
4万
查看次数

Junit在我的测试用例中断言OR条件

在我的测试用例中,我得到一个整数值:

int val = getXXX();
Run Code Online (Sandbox Code Playgroud)

然后,我想检查是否val等于3或等于5,这两种情况都可以.所以我做了:

assertTrue(val == 3 || val==5);
Run Code Online (Sandbox Code Playgroud)

我运行我的测试,日志显示val是5,但我的上述断言代码失败了AssertionFailedError.似乎我不能assertTrue(...)以这种方式使用,那么,如何检查OR条件的真实性?

java junit unit-testing junit4 junit3

22
推荐指数
3
解决办法
3万
查看次数

非常简单的代码,但在使用Fragment时出现错误"Activity已被破坏"

我做了一个非常简单的Activity,它显示了一个简单的ListFragment,如下所示:

我的活动:

public class MyActivity extends FragmentActivity {

    @Override
    public void onCreate(Bundle savedInstanceState) {
          FragmentManager fragMgr = getSupportFragmentManager();

          FirstFragment list = new FirstFragment();
          fragMgr.beginTransaction().add(android.R.id.content, list).commit();
    }

}
Run Code Online (Sandbox Code Playgroud)

我的ListFragment:

public class FirstFragment extends ListFragment{

    @Override
    public View onCreateView(LayoutInflater inflater, ViewGroup container, Bundle savedInstanceState) {
        inflater.getContext().getSystemService(Context.LAYOUT_INFLATER_SERVICE); 
        View view = inflater.inflate(R.layout.main, null);
        return view;
    }


    @Override
    public void onActivityCreated(Bundle savedInstanceState) {
        super.onActivityCreated(savedInstanceState);

        String listContent[] = {"Larry", "Moe", "Curly"}; 
        setListAdapter(new ArrayAdapter<String>(getActivity(), R.layout.list_item, listContent));
    }
   ...
}
Run Code Online (Sandbox Code Playgroud)

当我启动我的应用程序时,我收到错误消息:

 java.lang.IllegalStateException: …
Run Code Online (Sandbox Code Playgroud)

android android-widget android-emulator android-intent android-layout

21
推荐指数
3
解决办法
4万
查看次数

是否可以刷新片段的视图

我以编程方式更改了locale我的应用程序,如下所示:

Resources res = context.getResources();

 DisplayMetrics dm = res.getDisplayMetrics();
 android.content.res.Configuration conf = res.getConfiguration();
 conf.locale = new Locale("cn");
 res.updateConfiguration(conf, dm);
Run Code Online (Sandbox Code Playgroud)

在此之后,我想刷新当前显示的片段视图以显示新的区域设置.

所以,我首先得到当前片段(这是最新的片段backstack):

BackStackEntry latestEntry=fragMgr.getBackStackEntryAt(fragMgr.getBackStackEntryCount()-1);
String str=latestEntry.getName();
Fragment fragment=fragMgr.findFragmentByTag(str);
Run Code Online (Sandbox Code Playgroud)

在我获得当前显示的片段后,我想刷新它的视图,但是如何做到这一点?在Android中是否可以刷新片段的视图

android android-widget android-intent android-layout android-fragments

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

需要对调度队列,线程和NSRunLoop做一些澄清

以下是我所了解和理解的事情:

全局队列是一个并发队列,可以将任务分派给多个线程.执行任务的顺序无法保证.例如:

dispatch_async(dispatch_get_global_queue(DISPATCH_QUEUE_PRIORITY_DEFAULT,0), {
 for (int i; i<10; i++) {
  doTask()
 }
})
Run Code Online (Sandbox Code Playgroud)

如果我想调度到串口队列,我可以使用

dispatch_async(dispatch_queue_create("my.serial.queue", nil) {
  ...
}
Run Code Online (Sandbox Code Playgroud)

每次只有一个任务被分派到一个线程并被执行.订单是FIFO.

=====我感到困惑和不完全理解=======

  1. 主线程有一个NSRunLoop,在主线程中循环任务.我想知道调度队列和运行循环之间的关系是什么?我可以理解它,如果将任务调度到主线程,主线程的NSRunLoop获取调度任务并执行它吗?

  2. 将任务分派给多个线程的全局队列怎么样?iOS/OSX系统是否自动创建线程,还为每个线程创建NSRunLoop?然后每个线程中的运行循环从全局队列中获取调度任务并执行它?

  3. 谁知道线程?do dispatch_async()dispatch_sync()function知道哪个线程要调度任务,或者队列知道哪个线程要调度任务?

  4. 有没有办法以编程方式从调度队列中获取线程的NSRunLoop对象(调度任务的对象)?(这个问题与问题3有关)

multithreading nsthread grand-central-dispatch nsrunloop ios

21
推荐指数
2
解决办法
7698
查看次数

片段布局的布局

假设我有几个片段:

public class FirstFragment extends Fragment { ... }

public class SecondFragment extends Fragment { ... }

public class ThirdFragment extends Fragment { ... }
Run Code Online (Sandbox Code Playgroud)

我还有一个主要活动,其内容是(main.xml):

<LinearLayout ...>

  <!-- How to have a fragment placehold without specify which fragment show here? -->
  <fragment>

</LinearLayout>
Run Code Online (Sandbox Code Playgroud)

我的问题是,在上面的布局文件中,如何定义片段占位符而不指定在此处显示哪个片段,然后在My Activity java代码中,将适当的片段膨胀到占位符?

是否可能以及如何做到这一点?

android android-intent android-layout android-fragments android-activity

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