Android 从碎片活动引发事件
我想从Android 从碎片活动引发事件,android,android-fragments,android-activity,android-actionbar,android-fragmentactivity,Android,Android Fragments,Android Activity,Android Actionbar,Android Fragmentactivity,我想从ActivityFragment类调用方法,但我怀疑我没有完全理解这个ActionBar Fragments的工作方式 这是创建ActionBar选项卡的类的主要代码: public class OrdersActivity extends ActionBarActivity { @Override public void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); s
ActivityFragment
类调用方法,但我怀疑我没有完全理解这个ActionBar Fragments
的工作方式
这是创建ActionBar
选项卡的类的主要代码:
public class OrdersActivity extends ActionBarActivity {
@Override
public void onCreate(Bundle savedInstanceState)
{
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_orders);
android.support.v7.app.ActionBar actionBar = getSupportActionBar();
actionBar.setNavigationMode(ActionBar.NAVIGATION_MODE_TABS);
actionBar.setDisplayShowTitleEnabled(false);
ActionBar.Tab tab = actionBar.newTab()
.setText("Nowe")
.setTabListener(new TabListener<TabNewFragment>(
this, "new", TabNewFragment.class));
actionBar.addTab(tab);
tab = actionBar.newTab()
.setText("Wykonywane")
.setTabListener(new TabListener<TabInProgFragment>(
this, "in_progress", TabInProgFragment.class));
actionBar.addTab(tab);
tab = actionBar.newTab()
.setText("Archiwum")
.setTabListener(new TabListener<TabArchFragment>(
this, "archived", TabArchFragment.class));
actionBar.addTab(tab);
}
和我的碎片活动
课程:
public class TabNewFragment extends Fragment {
@Override
public void onActivityCreated(Bundle savedInstanceState) {
super.onActivityCreated(savedInstanceState);
}
@Override
public View onCreateView(LayoutInflater inflater, ViewGroup container, Bundle savedInstanceState)
{
View mainView = inflater.inflate(R.layout.activity_tab_new, container, false);
return mainView;
}
}
public class TabNewActivity extends FragmentActivity {
Button mAddNew;
private ProductItemAdapter mAdapter;
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_tab_new);
Toast.makeText(getApplicationContext(),"aaaaa",Toast.LENGTH_LONG).show();
productTable = msc.getTable(Products.class);
mAddNew=(Button)findViewById(R.id.buttonAdd);
mAddNew.setOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View v) {
addProductItem(v);
}
});
mAdapter = new ProductItemAdapter(this, R.layout.row_product_list);
ListView listViewProducts = (ListView) findViewById(R.id.listViewProducts);
listViewProducts.setAdapter(mAdapter);
}
public void addProductItem(View view) {
Products item = new Products();
//more code....
}
活动选项卡\u new.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="275dp"
android:paddingLeft="@dimen/activity_horizontal_margin"
android:paddingRight="@dimen/activity_horizontal_margin"
android:paddingTop="@dimen/activity_vertical_margin"
android:paddingBottom="@dimen/activity_vertical_margin"
tools:context="azure.holdersystem.View.OrdersActivityTabs.TabNewActivity">
<Button
style="?android:attr/buttonStyleSmall"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:background="@drawable/custom_btn_1"
android:text="Dodaj produkt"
android:id="@+id/buttonAdd"
android:layout_marginTop="10dp"
android:layout_below="@+id/editText"
android:layout_alignParentLeft="true"
android:layout_alignParentRight="true"
android:layout_alignParentStart="true" />
</RelativeLayout>.....
.....
当我点击按钮时,一切正常,但没有任何事件出现,甚至这个简单的祝酒词也没有出现
我做错了什么
编辑
嗯,很简单。。。只需删除FragmentActivity并将metods添加到fragment类。您的代码是actionbar activity,但启动时此TabNewActivity是什么?这是用于布局的活动。activity\u tab\u new