Java 我想在一个类中扩展片段和活动,以便在不更改总体代码的情况下为活动使用导航抽屉
这是我的三个片段活动之一。我只想使用Activity类中的函数(即使用setContentView()、startActivity()等)。请不要担心我出于某些原因删除的项目的包名。提前谢谢Java 我想在一个类中扩展片段和活动,以便在不更改总体代码的情况下为活动使用导航抽屉,java,android,android-fragments,android-activity,Java,Android,Android Fragments,Android Activity,这是我的三个片段活动之一。我只想使用Activity类中的函数(即使用setContentView()、startActivity()等)。请不要担心我出于某些原因删除的项目的包名。提前谢谢 import android.os.Bundle; import android.support.v4.app.Fragment; import android.view.LayoutInflater; import android.view.View; import android.view.ViewGr
import android.os.Bundle;
import android.support.v4.app.Fragment;
import android.view.LayoutInflater;
import android.view.View;
import android.view.ViewGroup;
public class MessagesFragment extends Fragment {
public MessagesFragment() {
// Required empty public constructor
}
@Override
public void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
}
@Override
public View onCreateView(LayoutInflater inflater, ViewGroup container,
Bundle savedInstanceState) {
// Inflate the layout for this fragment
return inflater.inflate(R.layout.fragment_messages, container, false);
}
}
这是在单击MessagesFragment中的按钮后应调用的活动
import android.app.Activity;
import android.os.Bundle;
public class AddNewBiller extends Activity {
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_addnewbiller);
}
}
如果以上内容不清楚,那么下面的屏幕截图可能会有所帮助
(1) 是消息片段布局。在这种情况下,当用户单击“添加新账单”按钮时,他们应该被重定向到(2)AddNewBiller活动布局,该布局不是片段。如果要在片段中使用活动函数,只需使用
getActivity()
例如getActivity()。startActivity(yourIntent)
我试图根据我所理解的内容来回答。看看这是否对你有帮助
为什么需要同时扩展片段和活动?这在Java中是不可能的,它表明您想做一些非常错误的事情!Hi@npace我只想点击这个片段中的一个按钮,它会将我重定向到另一个活动。我知道这对这里的大多数人来说都很简单,但我被困在这件事里了。请帮助截图-1截图-2感谢您的回复!我应该在哪里使用getActivity()?在onCreate()或onCreateView()中@rwojcikIt取决于如何附加片段(如果它是一个viewpager或其他东西)。如果您只是将片段附加到某个活动,则应在其中任何一个活动中使用
getActivity()
。片段生命周期中的每个方法都应该是albe,以获得一个活动实例。这是我的片段活动,它有一个名为“AddNewBiller”的按钮。当用户单击该按钮时,应重定向到“AddNewiller”活动。我无法执行此操作,因为我的片段活动扩展了片段,所以在使用此代码startActivity(new Intent(LoginActivity.this,Dashboard.class))时出错;当扩展活动而不是零碎的时候,它可以很好地工作。当然它不会工作:)更改startActivity(新的意图(LoginActivity.this,Dashboard.class))代码>到startActivity(新意图(getActivity(),Dashboard.class))代码>谢谢!startActivity()工作正常,但findViewById()方法表示,在extdending Fragment类而不是Activity时无法解析。这是我必须解决的最后一件事。这是我的片段活动,它有一个名为“AddNewBiller”的按钮。当用户单击该按钮时,应重定向到“AddNewiller”活动。我无法执行此操作,因为我的片段活动扩展了片段,所以在使用此代码startActivity(new Intent(LoginActivity.this,Dashboard.class))时出错;当扩展活动而不是碎片时,哪一项工作很好?为什么不使用actionbaractivity??它也可以解决导航抽屉的问题我是否需要在fragmet中使用actionbaractivity?如果我在oncreateview中执行了我的方法,就会抛出一些错误,提到它不能从超类中排除。谢谢