我对Android开发很新(这实际上是我的第一个项目),自上次更新以来,我一直在寻找这个问题的解决方案,但我还没有发现任何我没有的#&# 39; t先前尝试过,或实际上与我的问题有关。如果答案已经在那里而且我还没有找到,我道歉。
问题在于:
当我尝试从Eclipse的自动生成的Android应用程序项目开始编码时,事情就开始了。但是,当我尝试将任务分配给布局中的不同元素时,例如 onClick(),布局调用 setContentView(R.layout.activity_main)返回无效的 int 调用。建议的唯一快速修复是将布局调用更改为甚至不是项目[ setContentView(R.layout.activity_list_items)]的一部分的文件。但是,即使我确实使用了这个建议,我仍然无法使用我需要的元素来分配函数,因为它不是项目的一部分。
另外,这是我当前的activity_main.xml:
如果它有助于理解我的意思,那么这就是我的问题所在:
public void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
// Prior to 4.4.2, was still able to call layout without issue.
// Upon update, has not worked since.
// Unknown as to why.
setContentView(R.layout.activity_main); // here
getExternalFilesDir(mCurrentPhotoPath); // no issue with this function
scanButton = (Button)findViewById(R.id.scanButton); // issue starts with this line
helpButton = (Button)findViewById(R.id.helpButton);
setButton = (Button)findViewById(R.id.setButton);
scanButton.setOnClickListener(scanBtn);
helpButton.setOnClickListener(helpBtn);
setButton.setOnClickListener(setBtn);
}
如果我删除了 findViewById()和Button。 setOnClickListener()函数,则布局将返回为有效调用。请帮助我,这已经让我疯了几个星期了,我甚至不能继续完成项目的其余部分,直到我解决这个问题。如果您需要更多我拥有的东西,万一其他东西阻止它,请告诉我,我会修改这个问题。谢谢。
编辑#1:我说" findViewById()和Button。 setOnClickListener()功能,"但我应该说"或(包括)。"还应该提到" getExternalFilesDir(mCurrentPhotoPath)"虽然我可能需要在调用中移动函数以使它们正常工作,但是使用set和scan onClick()来使用它。对于有问题的activity_main.xml文件,我从自动生成的文件中更改的唯一内容是添加将分配有功能的Buttons和ImageView字段。我仍然会尝试查看更改这些内容是否有效,但我不知道该怎么做。
此外,这是我当前的xml文件。应该从这里开始。
<RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android"
xmlns:tools="http://schemas.android.com/tools"
android:layout_width="match_parent"
android:layout_height="match_parent"
android:paddingBottom="@dimen/activity_vertical_margin"
android:paddingLeft="@dimen/activity_horizontal_margin"
android:paddingRight="@dimen/activity_horizontal_margin"
android:paddingTop="@dimen/activity_vertical_margin"
tools:context=".MainActivity" >
<ImageView
android:id="@+id/photo"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_alignParentTop="true"
android:layout_centerHorizontal="true"
android:contentDescription="@string/PicDescript"
android:minHeight="100dp" />
<Button
android:id="@+id/scanButton"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_alignParentBottom="true"
android:layout_alignParentLeft="true"
android:text="@string/scanText"
android:onClick="ButtonOnClick" />
<Button
android:id="@+id/helpButton"
style="?android:attr/buttonStyleSmall"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_alignBaseline="@+id/scanButton"
android:layout_alignBottom="@+id/scanButton"
android:layout_centerHorizontal="true"
android:text="@string/helpText"
android:onClick="ButtonOnClick" />
<Button
android:id="@+id/setButton"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_alignParentBottom="true"
android:layout_alignParentRight="true"
android:text="@string/setText"
android:onClick="ButtonOnClick" />
</RelativeLayout>
编辑#2:哦亲爱的...第二个建议奏效了。现在我必须看看我是否可以修复它创建的其他问题。非常感谢你们。