我要输入新的代码库,必须了解它的工作方式。有一个自动生成的BR文件。我认为它来自数据绑定库。该BR文件包含很多值,但是我看不到自动从指定该文件内容的代码中搜索区域的方法。
举例来说:
public static final int currentDate = 35;
public static final int currentEmail = 36;
如何查找导致存在这些变量的代码的起源?
答案 0 :(得分:1)
我看不到自动从以下位置搜索代码中的区域的方法 指定文件内容的位置。
首先, BR 文件是自动生成的,它不会让您知道生成字段的位置。就像您无法搜索它们所属的 R 字段一样。
但是 BR 文件中通常会生成两种类型的字段。
第一个是languages students Percentage
-----------------------------------
French 734 24,46
Afrikaans 93 3,12
Greek 117 3,9
German 55 1,83
Armenian 160 5,33
Malaysian 5 0,16
Danish 15 0,5
American 5 0,16
Swedish 24 0,8
Bulgarian 1043 34,76
在您的布局中定义的。
<variable
2nd是<variable
name="model"
type="sample.data.Model"/>
字段。
@Bindable
BR文件看起来像
@Bindable
public String getPassword() {
return password;
}
public class BR {
public static final int _all = 0;
public static final int model = 0;
public static final int password = 1;
}
是一些始终生成的默认整数。
答案 1 :(得分:0)
通常生成的代码依赖于以下路径:
项目/应用/构建/生成的/ rs的路径
要在Android Studio中进行检查,可以更改项目结构视图 从“ Android”到“项目”,然后按照上述路径查看生成的 代码。
答案 2 :(得分:0)
很难找到。您可以右键单击一个字段并选择“查找用法”,但这只会向您显示它的使用位置,而不是它的起源。 BR.java中的字段是通过标有protected void Page_Load(object sender, EventArgs e)
{
if(!IsPostBack)
{
//Populate BankName for DropDown List
MSAccessConnection dropdown = new MSAccessConnection();
DataSet output = dropdown.PopulateDropdown("SELECT distinct([Bank]) FROM [BankDetails]");
ddlBankName.DataTextField = output.Tables[0].Columns["Bank"].ToString();
ddlBankName.DataValueField = output.Tables[0].Columns["Bank"].ToString();
ddlBankName.DataSource = output.Tables[0];
ddlBankName.DataBind();
ddlBankName.Items.Insert(0, new ListItem("Select", "All"));
}
}
Like
@Bindable
这将在BR.java文件中产生一个如下所示的字段:
@Bindable
public String getSomeStringValue() {
return "Some arbitrary string.";
}
因此,要找到BR文件中某些内容的源头,请先将BR.java文件中的内容放入“ get”中,然后对其进行搜索。我本人可能会搜索public static final int someStringValue = 126;
。